python爬虫今日头条_python scrapy如何爬取今日头条的文章

展开全部

resize,m_lfit,w_600,h_800,limit_1

这位大神写2113的很详细,不过现在api这个接口有点变5261化,多了一个参数

resize,m_lfit,w_600,h_800,limit_1

经过测试,4102这个参数可以固定!

start_urls=[

'ao.com/api/pc/feed/?category=news_finance&utm_source=toutiao&widen=1&max_behot_time={0}&max_behot_time_tmp={0}&tadrequire=true&as={1}&cp={2}&_signature=7DQ2rwAAtiawWJlHXVZg8uw0Nr']

resize,m_lfit,w_600,h_800,limit_1

请求头1653

加密算法和js 感谢!

加密的js没找到,直接用大神写的解密方式

resize,m_lfit,w_600,h_800,limit_1

resize,m_lfit,w_600,h_800,limit_1

从redis获取数据重组

resize,m_lfit,w_600,h_800,limit_1

json数据

resize,m_lfit,w_600,h_800,limit_1

解析json数据

一开始使用的是,抽取"source_url"的数据,然后301重定向可以访问详细页,跑了几遍之后会有一些奇怪的url,最后发现这样的方式不行,然后重组url。

resize,m_lfit,w_600,h_800,limit_1

获取下一部分

resize,m_lfit,w_600,h_800,limit_1

下一部分,只使用10次

3.详细页解析

resize,m_lfit,w_600,h_800,limit_1

不是我们熟悉的html呈现,而是js的形式

解析:正则!!====>解析正文部分。

resize,m_lfit,w_600,h_800,limit_1

可以看到有'<>'的html里面的大于小于号

一开始是,把这些符号用正则替换

resize,m_lfit,w_600,h_800,limit_1

最后运行几次,有个别文章匹配方式跟这种有点不同,达不到通用,换方案!

这一段的正文,在浏览器上呈现,可以看到是一段html文字,所以想到转换,

resize,m_lfit,w_600,h_800,limit_1

etree呈现出来之后,我们可以提取出来,再次etree

resize,m_lfit,w_600,h_800,limit_1

解析

这种方式,目前运行正常

在这里只是提供一种方法,也许不是最好的,只要能达到目的就行!

也希望大家能有新的方法!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值