火车头采集今日头条文章的教程
火车头采集今日头条文章的教程
教程总目录:火车头采集器使用教程
今日头条的文章还是挺难采集的,主要原因有下面2点
1.文章的真正列表不好找
2.内容采集需要转码和字符替换操作
3.今日头条对采集有限制
今日头条文章列表地址
https://www.toutiao.com/ch/news_finance/
我们打开今日头条这个财经类别文章的地址,然后知识兔浏览器F12,知识兔点击network、XHR
然后知识兔刷新网页
可以看到XHR里有很多内容,经过一个一个的手动排查发现了一个这样的地址:
https://www.toutiao.com/api/pc/feed/?category=news_finance&utm_source=toutiao&widen=1&max_behot_time=0&max_behot_time_tmp=0&tadrequire=true&as=A1054EAB11C40A9&cp=5EB1B4906A49DE1&_signature=PQhnZgAgEBD7X97rCkkfQD0JJnAAGO.ElFM7lJj2UCblkORtuYC2wgevFFpqVsBUgXK8lPyCfJ-biJ3IlG2R2.fvu3uKeQsO7ly0LG8eku93AXyEwLc5Oc03jE1KP8Rc0lz
我们复制这个地址在浏览器访问看下
发现都是转码后的内容,知识兔根据经验判断是Unicode编码转换的内容,我们直接复制网页内容转换下看看。
然后知识兔就可以发现他这个地址的转码内容实际就是返回的文章内容。
那么我们就完成了第一步,文章地址的寻找。
我们把这个地址填入火车头
然后知识兔重新分析那个地址,知识兔可以发现一些/group/6823289765643682312/这样的以/group/开头的内容
然后知识兔我们看下今日头条文章的实际地址是:
https://www.toutiao.com/a6823252568194417164/
以https://www.toutiao.com/a开头,后面是一串数字,这个数字就是上面/group/后面的内容。不信我们替换访问看看
https://www.toutiao.com/a6823289765643682312/
是不是很刺激。
那我们如何采集他呢?
看下图
提取规则:source_url”: “/group/[参数]/”
拼接地址:https://www.toutiao.com/a[参数1]/
我们测试下网址采集看看
测试网址采集完美运行,真棒!!!
2.内容采集
网址找到了我们下面来分析下内容吧
文章地址:https://www.toutiao.com/a6823289765643682312/
查看文章的源代码,搜索文章标题
开头有个前后以title包含的标题,但是本教程没有用这个,具体什么原因我忘了。前些天我采集时候刚开始也是取得这里面的标题,后来发现了一些错误然后知识兔舍弃了这一处。具体什么错误我忘了。。。
我们用下面的标题
title: '"伊朗发行新货币,直接挂钩人民币,经济重启"’.slice(6, -6),
标题还是挺好提取的,直接前后截取即可
开头字符串:title: '"
结尾字符串:"’.slice
然后知识兔是正文的采集
正文比较难办,。因为前后有一些特殊字符,这些特殊字符再经过转码,变得稀奇古怪的。我们需要对前后的内容过滤一下。
先看下正文前后啥样的。
前面:content: '"\u003Cp\u003E
后面:\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E"’.slice(6, -6),
这中间的就是正文内容。
那么我们正文就可以从下面两处之间截取
开头字符串:content: '"
结尾字符串:"’
前面的\u003Cp\u003E转码后是
,
后面的\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E
转码后是
这些
是正文的一部分我们还是需要这些标签的。所以不要从这俩地方开始截取。
然后知识兔正文里有配图,图片调用需要
先在火车头上做一个字符编码解码
文章原文:
content: '"\u003Cp\u003E目前,伊朗里亚尔已经找到了一个合适的美元汇率。伊朗黑市和伊朗国家银行之间的汇率差异超过4倍。这在世界上更加罕见。这种情况的根源是美国对伊朗实施了最严厉的制裁。美国银行没有为任何伊朗货币和货物分享任何服务。伊朗货币很难流通。早在对伊朗,相对温和的奥巴马,伊朗里亚尔就经历了数十次贬值,最少达到40,000: 1。现在美国对伊朗,和伊朗里亚尔实施了更严厉的制裁,实际汇率肯定低于此。\u003C\u002Fp\u003E\u003Cdiv class=\"pgc-img\"\u003E\u003Cimg src=\"http:\u002F\u002Fp1.pstatp.com\u002Flarge\u002Fpgc-image\u002F00668b73977e48ad9dce70dff9d092d8\" img_width=\"616\" img_height=\"415\" alt=\"伊朗发行新货币,直接挂钩人民币,经济重启\" inline=\"0\"\u003E\u003Cp class=\"pgc-img-caption\"\u003E\u003C\u002Fp\u003E\u003C\u002Fdiv\u003E\u003Cp\u003E2020年5月4日,伊朗议会最终通过《伊朗货币和银行法》,决定将里亚尔将会改为新货币“图们江”。新货币将以1元兑换1万里亚尔元,伊朗,与人民币的汇率预计为1: 1。事实上,早在今年3月,伊朗就决定在国际贸易中使用人民币结算,因为它无法购买医疗用品。现在,人民币汇率问题是第一步。\u003C\u002Fp\u003E\u003Cp\u003E伊朗发行的新货币将与里亚尔共存一段时间。新货币的目的首先是稳定金融秩序,其次是从5月2日起重新启动伊朗经济。这是一个极好的机会。过去,作为一个拥有数千万人口的国家,它会消耗大量资源来取代纸币。现在是时候利用经济停滞和重启来完成货币替换了。\u003C\u002Fp\u003E\u003Cdiv class=\"pgc-img\"\u003E\u003Cimg src=\"http:\u002F\u002Fp9.pstatp.com\u002Flarge\u002Fpgc-image\u002F010ca3dd18db4c16acf8523184e3b6f5\" img_width=\"618\" img_height=\"378\" alt=\"伊朗发行新货币,直接挂钩人民币,经济重启\" inline=\"0\"\u003E\u003Cp class=\"pgc-img-caption\"\u003E\u003C\u002Fp\u003E\u003C\u002Fdiv\u003E\u003Cp\u003E对伊朗,来说,货币兑换有其自身的原因。除了旧货币严重贬值之外,在过去一段时间里,伊朗还与印度,欧洲和其他国家交换了一些钞票。最初,这些国家名义上帮助伊朗度过了难关。然而,自去年底以来,一些以境外流通为名的假币开始出现在伊朗市场,制造出的假币足以混淆事实。一些俄罗斯媒体认为这是美国金融战争的一部分,因为世界上其他国家没有动机冒这样的信用风险来打击伊朗经济。\u003C\u002Fp\u003E\u003Cp\u003E目前,世界上大多数国家的经济仍处于停滞状态。伊朗提前恢复了经济,一种新的货币随之诞生。虽然这可能不会令伊朗的经济较去年更好,但却可以令伊朗的经济倒退少一点,从而在世界上进一步排名。随着伊朗,石油以外的商品出口比例的增加,伊朗不仅推出了一种与人民币挂钩的新纸币,这是世界上最好的真实信用货币,而且知识兔还与数字人民币的未来发展挂钩。\u003C\u002Fp\u003E\u003Cdiv class=\"pgc-img\"\u003E\u003Cimg src=\"http:\u002F\u002Fp9.pstatp.com\u002Flarge\u002Fpgc-image\u002F26814e4eb10646fcb8197337fd6eec43\" img_width=\"621\" img_height=\"390\" alt=\"伊朗发行新货币,直接挂钩人民币,经济重启\" inline=\"0\"\u003E\u003Cp class=\"pgc-img-caption\"\u003E\u003C\u002Fp\u003E\u003C\u002Fdiv\u003E\u003Cp\u003E伊朗这次选择了正确的道路。未来,随着数字人民币的引入,伊朗将逐步完全摆脱国际贸易中的美元制裁,回归正常国家的地位。我们应该知道,过去40年来,伊朗一直受到美国的制裁,这也是人们批评它不如巴列维时期的一个重要原因。一旦美国不能对伊朗,实施制裁,伊朗应该能够在经济发展方面做很多事情。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E"'.slice(6, -6),
转码后:
content: '"目前,伊朗里亚尔已经找到了一个合适的美元汇率。伊朗黑市和伊朗国家银行之间的汇率差异超过4倍。这在世界上更加罕见。这种情况的根源是美国对伊朗实施了最严厉的制裁。美国银行没有为任何伊朗货币和货物分享任何服务。伊朗货币很难流通。早在对伊朗,相对温和的奥巴马,伊朗里亚尔就经历了数十次贬值,最少达到40,000: 1。现在美国对伊朗,和伊朗里亚尔实施了更严厉的制裁,实际汇率肯定低于此。
2020年5月4日,伊朗议会最终通过《伊朗货币和银行法》,决定将里亚尔将会改为新货币“图们江”。新货币将以1元兑换1万里亚尔元,伊朗,与人民币的汇率预计为1: 1。事实上,早在今年3月,伊朗就决定在国际贸易中使用人民币结算,因为它无法购买医疗用品。现在,人民币汇率问题是第一步。
伊朗发行的新货币将与里亚尔共存一段时间。新货币的目的首先是稳定金融秩序,其次是从5月2日起重新启动伊朗经济。这是一个极好的机会。过去,作为一个拥有数千万人口的国家,它会消耗大量资源来取代纸币。现在是时候利用经济停滞和重启来完成货币替换了。
对伊朗,来说,货币兑换有其自身的原因。除了旧货币严重贬值之外,在过去一段时间里,伊朗还与印度,欧洲和其他国家交换了一些钞票。最初,这些国家名义上帮助伊朗度过了难关。然而,自去年底以来,一些以境外流通为名的假币开始出现在伊朗市场,制造出的假币足以混淆事实。一些俄罗斯媒体认为这是美国金融战争的一部分,因为世界上其他国家没有动机冒这样的信用风险来打击伊朗经济。
目前,世界上大多数国家的经济仍处于停滞状态。伊朗提前恢复了经济,一种新的货币随之诞生。虽然这可能不会令伊朗的经济较去年更好,但却可以令伊朗的经济倒退少一点,从而在世界上进一步排名。随着伊朗,石油以外的商品出口比例的增加,伊朗不仅推出了一种与人民币挂钩的新纸币,这是世界上最好的真实信用货币,而且知识兔还与数字人民币的未来发展挂钩。
伊朗这次选择了正确的道路。未来,随着数字人民币的引入,伊朗将逐步完全摆脱国际贸易中的美元制裁,回归正常国家的地位。我们应该知道,过去40年来,伊朗一直受到美国的制裁,这也是人们批评它不如巴列维时期的一个重要原因。一旦美国不能对伊朗,实施制裁,伊朗应该能够在经济发展方面做很多事情。
"'.slice(6, -6),
上面这一步转码主要是转换\u003Cp\u003E这些字符用的,=\"之类的字符可以发现并没有正常转码。为什么没正常转码我也不知道。
那么我们直接把这些字符给替换下
\" img_width替换为.jpg" img_width=\"替换为="\" 替换为"\"替换为"
上面第三个\"后面有个空格类的字符,直接复制即可。
然后知识兔我们设置一下HTML标签排除的选项,图像和段落这些标签不要选,保留下来。
我们测试下看看正文采集的效果吧
可以看到正文已经全部显示正常,图片标签也正常了。
到这里今日头条的采集基本就完成了大半了。
下面还有个重要的问题
今日头条好像有限制采集的,因为本人在采集过程中发现过采集内容为空的现象。可能是被检测到了UA或者是访问频率,或者其他导致的。
期间尝试了很多方法,有时候有效有时候又无效。整的我有点蒙逼。这一块目前还在跟今日头条斗智斗勇之中。目前这一块给不了大家太多的帮助。
建议是采集速度可以设置为1000ms到2000ms,采集线程设置为1,先这样降低下采集速度。
其他可以测试今日头条防采集策略的设置可以看下HTTP请求设置。
这里面可以更改cookie和UA设置
下载仅供下载体验和测试学习,不得商用和正当使用。
[ppwp passwords=”zhishitu.cn”]
下载体验
应版权要求,禁止分享,敬请谅解,有问题务必找客服哈。
有问题找客服哈,并领取学习福利!
[/ppwp]