今日头条文章采集软件(一下今日头条爬取文章的几个方案(一)_ )
优采云 发布时间: 2021-11-28 04:02今日头条文章采集软件(一下今日头条爬取文章的几个方案(一)_
)
使用环境:爬取思路(一) 生成as、cp和_signature的思考
对于今日头条的爬虫来说,网上搜索到的文章大部分都是基于崔庆才(一个通过搜索爬取漂亮街拍的计划)。不可能的。在这里,上网搜索,搜索,谷歌和百度都使用。这里有一些计划通过今天的头条来爬取文章。
今日头条'as,cp破解
使用的技术是execjs,是一个执行js代码的框架,但是在浏览器环境(比如Node环境)中还没有很好的嵌入。
使用了一个PyV8 js库,主要是获取_signature
给出了一个非常他妈的代码:
def get_signature(self,user_id):
"""
计算_signature
:param user_id: user_id不需要计算,对用户可见
:return: _signature
"""
req = requests.Session()
# js获取目的
jsurl = 'https://s3.pstatp.com/toutiao/resource/ntoutiao_web/page/profile/index_8f8a2fb.js'
resp = req.get(jsurl,headers = self.headers)
js = resp.content
effect_js = js.split("Function")
js = 'var navigator = {};\
navigator["userAgent"] = "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.87 Safari/537.36";\
' + "Function" + effect_js[3] +
"Function" + effect_js[4] +
";function result(){ return TAC.sign(" + user_id + ");} result();"
# PyV8执行步骤
with PyV8.JSLocker():
self.ctxt.enter() #已在上面初始化过
vl5x = self.ctxt.eval(js)
self.ctxt.leave()
self.LOG.info("圣诞快乐")
return vl5x
PyV8库在win10上装不了,后来在centos7环境下安装了。执行这段代码后,直接报内存不足的错误。直接调用TAC.sign的方法缺少Node环境(更多的是浏览器环境),或者报错。也许这确实是一种方法,但很少有人对短书给出反馈。我不知道是我想不通还是他们有。
(二)我后来直接用了自己的方法:绕过_signature参数,直接请求网页的数据信息(wap)。
右键查看,点击json栏,选择其中一个url
网址一:
网址二:
至于,前面文章中的cp,我们已经搞清楚了,现在我们要做的就是如何拼接这串url,
根据上面两个网址的对比,我们只需要替换max_behot_time和jsonp,
这样,我们就得到了整个列表页面的数据。
接下来,解析详情页的数据可能要简单得多。
查看页面源代码:
这正是我们想要的数据,使用常规采集就足够了。
至此,我们就可以完全检索今日头条的数据了。
需要源码的可以加个小秘圈: