织梦文章发布

# -*- coding: utf-8 -*-
import requests
from random import randint
import re
import os


def post_article(url, form):
    r = requests.post(url, data=form, timeout=10)
    arturl = ''.join(re.findall(r"<a class='arturl' href='([^']+)'", r.text))
    if not arturl:
        print(r.text)
        return 'not found'
    return arturl


# dedecms的表单
def make_form(title: str, content: str, catid: int, pubtime) -> dict:
    return {
        'username': 'admin',  # 后台登录的用户名,必填而且必须正确
        'channelid': 1,  # 文章模型,1代表普通文章
        'typeid': catid,  # 要发布的栏目id
        'title': title,  # 文章标题
        'body': content,  # 文章内容
        'tags': '',  # 文章的tags
        'source': '互联网',  # 文章来源
        'description': '',  # 文章摘要
        'pubdate': pubtime,  # 发布时间
        'remote': 0,  # 下载远程图片,0表示不下载 1表示下载
        'arcrank': 0,  # 阅读权限, 待审核是-1,默认是0
        'click': randint(100, 999),  # 文章初始的浏览次数
        'ishtml': 0,  # 是否生成HTML文件,0表示动态浏览,1表示生成HTML
    }



def main():
    curdir = os.path.dirname(__file__)
    article_path = os.path.join(curdir, 'article')
    articles = os.listdir(article_path)[1243:]
    os.chdir(article_path)
    for article in articles:
        with open(article, encoding='utf-8') as f:
            title = article.split('-')[0]
            if not title:
                print(article)
                continue
            pubtime = article.split('-')[-1]
            content = f.read()
        form = make_form(title, content, 1, pubtime)
        api = 'http://www.dedecms.com/dede/jiekou.php?p0w=dsahi317632udgi'
        url = post_article(api, form)
        print(url)


if __name__ == '__main__':
    main()


猜你喜欢

转载自blog.csdn.net/haohaomax1/article/details/110952629
今日推荐