东尧:【phpCMS自动发文】python开发phpCMS自动发文工具

  • A+
所属分类:SEO培训课程

前面的教程我们已经完成了织梦CMS的自动推文工具开发,今天我们就来继续学习phpCMS的自动推文工具。这里需要说明一下,phpCMS和帝国CMS不能使用cookie,只能使用接口的方式来推送。这是为什么呢?因为phpCMS和帝国CMS每次登录时都会生成不同的hash值,用cookie基本是没法进行多次推送的。

phpCMS和帝国CMS每次登录时都会生成不同的hash值

 

首先,将东尧提供的phpCMS免登陆发布接口(文章最后提供有接口和工具源码的下载地址)复制到文件目录下,登录查看接口文件:“http://127.0.0.1/phpcms/jiekou.php?pw=123456”,确定post的url。

然后到接口文件内查看我们需要的参数名称:栏目id、文章标题、文章内容…… 将这些参数以字典形式存入data_form变量中,方便后面传参使用。

接口文件

 

函数部分代码:

  1. def post(title, content ,catid):
  2.     data_form = {
  3.         'cid': catid,  # 栏目id
  4.         'title': title,  # 文章标题
  5.         'content': content,  # 正文内容
  6.         'keywords': '',
  7.         'description': '',
  8.         'date': ''  # 日期(为空为当前时间)
  9.     }
  10.     query = 'http://127.0.0.1/phpcms/jiekou.php?pw=123456'
  11.     data = urllib.parse.urlencode(data_form).encode(encoding='utf-8')
  12.     req = urllib.request.Request(query,data=data)
  13.     res = urllib.request.urlopen(req, timeout=10)
  14.     result = res.read().decode('utf-8')

 

接下来就写POST部分代码了:

  1. if __name__ == '__main__':
  2.     content_list = [line.strip() for line in open("duanwenxue.txt")]
  3.     for wz in content_list[:10]:
  4.         text = wz.split("####")
  5.         title = text[0]
  6.         content = text[1]
  7.         print("开始发布:", title)
  8.         post(title, content, 6)
  9.         time.sleep(random.randint(2, 6)) # 间隔时间

 

运行结果,文章已成功批量发布完成: 运行结果,文章已成功批量发布完成

运行结果,文章已成功批量发布完成

 

总的来说,接口版本的POST工具都比较简单,希望大家都能熟练掌握。

 

源码下载

东尧已经将本文涉及到的源代码放在了百度网盘中:

立即下载源代码:https://pan.baidu.com/s/1OcJYkaFItWCZonYOh_0AFw

获取网盘密码方法:关注我的公众号(陈东尧)回复关键词“PHPCMS自动发文工具”即可获得下载密码。

东尧公众号

 

相关文章

【织梦自动发文】python开发dedeCMS自动发文工具:接口版本

【织梦自动发文】python开发dedeCMS自动发文工具:Cookie版本

【自动发文】python开发三大主流CMS系统自动推文工具:SEO必备(一)

【文章采集】SEOer必学:文章采集案例之短文学网散文采集(二)

 

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: