【转】博客转发小工具1

【转】博客转发小工具1

有些朋友在转发别人博客的时候会问,博客怎么转发的啊?让我一段一段的复制吗?那图片怎么办?隐藏代码要一个一个的打开了复制?

对,很麻烦。费时费力。有的同学会说收藏不就可以了吗?收藏只是收藏了别人的地址,并没有收藏人家的全部内容。如果人家删除原文章,那就等于白收藏了。

我不知道 博客园有没有一键转发的功能,反正我是没找到的。于是,闲来无事,做了个博客转发小工具。

其实很简单,分三步。

一:取得页面内容

取页面内容需要用到HtmlAgilityPack.dll 详细用法可以百度之。

 1 /// <summary>
 2 /// 抓取方法
 3 /// </summary>
 4 /// <param name="url">url地址</param>
 5 /// <returns></returns>
 6 public Result getList(string url)
 7  {
 8 if (string.IsNullOrEmpty(url) || string.IsNullOrEmpty(url.Trim()))
 9 return null;//如果url为空 则立刻返回
10 Result result = new Result();
11 HtmlWeb htmlWeb = new HtmlWeb();
12 try
13  {
14 HtmlAgilityPack.HtmlDocument htmlDoc = htmlWeb.Load(url);
15 result.url = url;
16 result.content = htmlDoc.DocumentNode.SelectSingleNode("//div[@id=‘cnblogs_post_body‘]").InnerHtml;//这里是去div id为cnblogs_post_body的全部内容 也就是我们发布的博客全部内容
17 result.title = htmlDoc.DocumentNode.SelectSingleNode("//a[@id=‘cb_post_title_url‘]").InnerText; //取标题
18  }
19 catch (Exception) { return null; }
20 return result;
21 }

二:复制页面内容

Clipboard.SetText(txt_content.Text);//把内容复制到粘贴板

三:粘贴内容发布

这里就没有我的事了。你自己去后台发布就ok了。

不过发布的时候要注意了。粘贴的时候一定要切换到html模式。

贴图了

这里贴出全部代码,因为代码量非常少,就放一个文件了。

 1 using HtmlAgilityPack;
 2 using System;
 3 using System.Collections.Generic;
 4 using System.ComponentModel;
 5 using System.Data;
 6 using System.Drawing;
 7 using System.Text;
 8 using System.Windows.Forms;
 9
10 namespace 博客转发
11 {
12 public partial class Form1 : Form
13  {
14 public Form1()
15  {
16  InitializeComponent();
17  }
18
19 private void button1_Click(object sender, EventArgs e)
20  {
21 //string url = @"http://www.cnblogs.com/zhaopei/p/4174811.html";
22 Result re = getList(txt_url.Text);
23 if (re == null)
24  {
25 MessageBox.Show("请输入正确博客园的博客地址~"); return;
26  }
27 string str = @"<a href=‘" + re.url + "‘>【转】" + re.title + "</a><br/>";
28 txt_content.Text = str + re.content;
29 txt_title.Text = "【转】" + re.title;
30 Clipboard.SetText(txt_content.Text);//把内容复制到粘贴板
31 MessageBox.Show("已经成功复制到粘贴板~");
32  }
33
34 /// <summary>
35 /// 抓取方法
36 /// </summary>
37 /// <param name="url">url地址</param>
38 /// <returns></returns>
39 public Result getList(string url)
40  {
41 if (string.IsNullOrEmpty(url) || string.IsNullOrEmpty(url.Trim()))
42 return null;//如果url为空 则立刻返回
43 Result result = new Result();
44 HtmlWeb htmlWeb = new HtmlWeb();
45 try
46  {
47 HtmlAgilityPack.HtmlDocument htmlDoc = htmlWeb.Load(url);
48 result.url = url;
49 result.content = htmlDoc.DocumentNode.SelectSingleNode("//div[@id=‘cnblogs_post_body‘]").InnerHtml;//这里是去div id为cnblogs_post_body的全部内容 也就是我们发布的博客全部内容
50 result.title = htmlDoc.DocumentNode.SelectSingleNode("//a[@id=‘cb_post_title_url‘]").InnerText; //取标题
51  }
52 catch (Exception) { return null; }
53 return result;
54  }
55  }
56
57 public class Result
58  {
59 /// <summary>
60 /// 链接
61 /// </summary>
62 public string url { get; set; }
63 /// <summary>
64 /// 标题
65 /// </summary>
66 public string title { get; set; }
67 /// <summary>
68 /// 正文内容
69 /// </summary>
70 public string content { get; set; }
71  }
72 }

程序下载 密码:5c6q  源码下载 密码:60fr

如果大家有兴趣可以在此基础上进行自己的扩展和修改。

原文地址:https://www.cnblogs.com/wanlipenghtml/p/10407052.html

时间: 2024-10-07 04:14:59

【转】博客转发小工具1的相关文章

博客转发小工具1

[转]博客转发小工具1 有些朋友在转发别人博客的时候会问,博客怎么转发的啊?让我一段一段的复制吗?那图片怎么办?隐藏代码要一个一个的打开了复制? 对,很麻烦.费时费力.有的同学会说收藏不就可以了吗?收藏只是收藏了别人的地址,并没有收藏人家的全部内容.如果人家删除原文章,那就等于白收藏了. 我不知道 博客园有没有一键转发的功能,反正我是没找到的.于是,闲来无事,做了个博客转发小工具. 其实很简单,分三步. 一:取得页面内容 取页面内容需要用到HtmlAgilityPack.dll 详细用法可以百度

博客转发小工具2

[转]博客转发小工具2 昨天发了一个博客转发小工具有朋友说"能一键转发到各主流媒体站上就更好了".一开始我以为会能难,需要登录啊还有cookie的管理啊模拟post请求啊,乱七八糟一大堆.心想算啦,太累人,还不一定搞得定.后来心里总想着有没有什么简单的办法,就在网上查资料.最后皇天不负有心人让我找到了HttpClient. ok,接着昨天的来.昨天的只能获取别人文章的内容复制到粘贴板.今天让它能一键发布. 首先需要解决的问题就是登录问题,不然可能是不能发布的. 登录博客园的代码 1 /

博客备份小工具3

[转]博客备份小工具3 接着 博客转发小工具2 ,又弄了一个第三版.主要功能有:博客备份到本地.浏览备份到本地的博客.关键字搜索本地的博客和转发博客可以选择个人分类 填写Tag标签.其实想了想,转发博客干嘛非要在本地客户端转发,直接在博客园的页面用js不就可以达到目的么.想是这么想,还没尝试.等我写完了这个博客就去试试..继续回到这个小工具,说实在的本人做的这个小工具界面丑的那是..反正就是很丑很丑啦.没办法,没有美工的那种艺术细胞.还有就是,整个功能其实真没什么技术含量,还是html的抓取,w

利用MetaWeblog API 自制博客发布小工具

博客园提供了诸多数据接口, 利用这些接口可以很容易的实现博客的发布,修改,删除等 1.需要引用一个DLL:为CookComputing.XmlRpcV2 2.新建一个类,在其中是一些要实现的东西,如: 3.调用这些接口发布一篇简单的博客,其中的URL应该是你的博客设置里的 在下方的账号与密码处填上你的账号与密码 4.查看结果

为知笔记 | [插件]发布笔记到博客,更好的博客离线撰写工具

23 二 1 --> [插件]发布笔记到博客,更好的博客离线撰写工具 2011-02-23 功能特性 为知笔记支持绝大部分的博客离线撰写,可以方便地把笔记直接发布为博客. 使用 打开您已经在Wiz的撰写好的文章,然后点击“分享”按钮-发布到博客,如下图: 选择“发布到博客”,出现如下对话框: API地址:就是博客离线撰写发布的API地址,通常每一个博客的API地址都不相同,您可以从博客的帮助里面获得.下面是常用的一些博客API地址:  常用博客 API地址 新浪博客 http://upload.

博客园小技巧

1.博客园小技巧 2.半成品博客皮肤(不知有没有继续下去的必要)

11个最流行的静态(博客)网站生成工具

11个最流行的静态(博客)网站生成工具 最近特别流行使用静态网站搭建博客,本博客就是host在GitHub Pages的静态网站.静态网站非常适合专注于内容的网站,例如,博客.那你可能会问,为什么不用大名顶顶的wordpress(动态网站)呢. 静态网站和动态网站相比有如下好处: 省钱.静态网站占用的系统资源少.如果挂到github pages上,只要注册一个域名就可以了. 速度快.不经过php解析器,不用数据库,速度自然比动态网站快 安全.由于静态网站的简洁,免疫很多web攻击方式. 服务器端

王大仙的博客园小仓鼠

今天手敲了一套博客园的css样式,网上搜到的小仓鼠挺有意思,自己稍作改装,粘贴上就可以用 附上代码: <style type="text/css"> #shhamster{ background: #a8c1d8;border-radius:10px; } #shhamster:hover{ border-radius: 5px;border: red 1px solid;background: orange; } </style> <div id=&qu

网站开发的福音:流行的静态(博客)网站生成工具

最近特别流行使用静态网站搭建博客,静态网站非常适合专注于内容的网站,例如,博客.那你可能会问,为什么不用大名顶顶的wordpress(动态网站)呢. 静态网站和动态网站相比有如下好处: 省钱.静态网站占用的系统资源少.如果挂到github pages上,只要注册一个域名就可以了. 速度快.不经过php解析器,不用数据库,速度自然比动态网站快 安全.由于静态网站的简洁,免疫很多web***方式. 服务器端配置简单.只需要一个web server(apache.nginx). 非常容易维护. 静态网