C# 快速发布文章至WordPress

时间:12-06-14 栏目:C#开发, SEO工具 作者:kyle 评论:0 点击: 7,327 次

成都SEO小五在用GetArticles Pro采集了不少文章,准备发布到EN站的时候,出了不少问题。

先是站群不能正常发布。没找到原因。程序员正在帮我重构站群升级第二版。

然后虫虫博客发布的时候。又不能实现预定义发布功能。

因为文章太多了。准备一次性上传到WP,然后让WP随机自动发布出来。

其它工具也没有合用的。无奈自己花了2个小时写了一个出来,实现发布功能。

使用的也是我自己修改过的免登陆发布接口。

功能比较简单,载入由TBS或者SpinnerChief处理过的文章,发布到网站上去。全部是预定义发布里面。效果如下。

贴点核心代码出来。用C#发布文章其实是非常简单的。但是有些站要复杂一点,只要抓好包,一切都Easy.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
     private void btnPostWP_Click(object sender, EventArgs e)
        {
            Thread th = new Thread(new ThreadStart(PubToWP));
            th.IsBackground = true;
            th.Start();
        }
        public void PubToWP()
        {
            if (lstPostWPArticle.Items.Count < 1)
            {
                return;
            }
            for (int j = 0; j < lstPostWPArticle.Items.Count; j++)
            {
                tssStatus.Caption = "正在发布到WordPress使用第"+j.ToString()+"篇文章";
                string filepath = lstPostWPArticle.Items[j].SubItems[1].Text.ToString();
                string[] lines = File.ReadAllLines(filepath);
                if (lines == null || lines.Length < 1) continue;
                string title = lines[0].ToString();//取出第一行做为标题
                StringBuilder sb = new StringBuilder();
                for (int i = 0; i < lines.Length; i++)
                {
                    if (i == 0) continue;
                    sb.AppendLine(lines[i]);//把除第一行之外的全部做为内容。
                }
                string status = "发布失败";
                status = PublishWP(txtPostWPUrl.Text.Trim(), title, sb.ToString(), Convert.ToInt32(numPostWPCatID.Text));//这里调用了一个发布方法来实现。
                lstPostWPArticle.Items[j].SubItems[3].Text = status;
            }
            DevMessage.ShowTips("发布完成");
        }

        /// <summary>
        /// 发布到WordPres
        /// </summary>
        /// <param name="jiekou">接口路径</param>
        /// <param name="title">文章标题</param>
        /// <param name="content">文章内容</param>
        /// <returns></returns>
        public static string PublishWP(string jiekou,string title,string content,int catid)
        {
            if (string.IsNullOrWhiteSpace(jiekou))
            {
                return "接口为空";
            }
            if (string.IsNullOrWhiteSpace(title))
            {
                return "标题为空";
            }
            if (string.IsNullOrWhiteSpace(content))
            {
                return "内容为空";
            }
            if (!jiekou.Trim().EndsWith("/"))
            {
                jiekou = jiekou.Trim() + "/";
            }
            jiekou = jiekou + "wpup2.php?action=save";//组合发布接口
            StringBuilder sb=new StringBuilder(255);
            sb.Append("post_title="+HttpUtility.UrlEncode(title));
            sb.Append("&post_category="+catid);
            sb.Append("&post_date=2014-05-06");
            sb.Append("&tag=");
            sb.Append("&post_content=" + HttpUtility.UrlEncode(content));
            string result = HttpHelper.PostHtml(jiekou, sb.ToString(), "utf-8");
            Thread.Sleep(100);
            return result;
        }

然后全部文章变成Schedule了之后,杂个办呢。

嘿嘿。还有一个核武器,随机文章器。

将所有Schedule的文章平均每天发布出来。

也是以前改的一个代码得到的效果。

成都SEO小五处理过后的结果是这样的。

好像看不出来神马。但是实际上已经成功了。

上面可以把文章 平均分配到20天发布。假如一共有100个文章,就是一天5个。

结果来了

为神马这么复杂。因为发布接口里面不好设置时间。所以搞了一个脚本,来实现这个功能。

好喽。准备发布其它内容了。然后成都SEO小五准备睡觉觉了。

 

成都SEO小五嚎2句: 本文是(成都SEO小五)辛苦弄出来的,转载成都SEO小五原创的请保留链接: C# 快速发布文章至WordPress,3Q

C# 快速发布文章至WordPress:等您坐沙发呢!

来给哥评论评论


------====== 小五公告 ======------
成都SEO小五,专注成都搜索引擎优化。
小五善长站内外优化,C#、PHP开发,中英文SEO,Google中英文和百度优化技术。欢迎群内交流。伸手党请绕路,求资源的请绕开,求问题解答的请进群内交流。开放了一个QQ交流群:160750032。加入验证时请标注任何SEO相交字眼。友情链接直接Q我,收录正常,内容大部份原创、SEO或者程序开发、网络营销、线上推广等相关行业即可。

常用工具

赞助广告

来看过哥的人