广告投放

火车头采集今日头条文章教程

目录

    今日头条的文章还是挺难采集的,主要原因有下面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转码后是<p>,

    后面的\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E

    转码后是</p><p><br></p>

    这些<p>是正文的一部分我们还是需要这些标签的。所以不要从这俩地方开始截取。

    然后正文里有配图,图片调用需要<div class="pgc-img"><img src=这个标签的。但是原文里标签都成了\&quot;和&#x3D;\&quot;之类的东西。所以我们还需要做下面的工作,才能正常让文章显示图片。

    先在火车头上做一个字符编码解码

    火车头采集今日头条文章教程
    火车头采集今日头条文章教程

    文章原文:

    content: '&quot;\u003Cp\u003E目前,伊朗里亚尔已经找到了一个合适的美元汇率。伊朗黑市和伊朗国家银行之间的汇率差异超过4倍。这在世界上更加罕见。这种情况的根源是美国对伊朗实施了最严厉的制裁。美国银行没有为任何伊朗货币和货物提供任何服务。伊朗货币很难流通。早在对伊朗,相对温和的奥巴马,伊朗里亚尔就经历了数十次贬值,最少达到40,000: 1。现在美国对伊朗,和伊朗里亚尔实施了更严厉的制裁,实际汇率肯定低于此。\u003C\u002Fp\u003E\u003Cdiv class&#x3D;\&quot;pgc-img\&quot;\u003E\u003Cimg src&#x3D;\&quot;http:\u002F\u002Fp1.pstatp.com\u002Flarge\u002Fpgc-image\u002F00668b73977e48ad9dce70dff9d092d8\&quot; img_width&#x3D;\&quot;616\&quot; img_height&#x3D;\&quot;415\&quot; alt&#x3D;\&quot;伊朗发行新货币,直接挂钩人民币,经济重启\&quot; inline&#x3D;\&quot;0\&quot;\u003E\u003Cp class&#x3D;\&quot;pgc-img-caption\&quot;\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&#x3D;\&quot;pgc-img\&quot;\u003E\u003Cimg src&#x3D;\&quot;http:\u002F\u002Fp9.pstatp.com\u002Flarge\u002Fpgc-image\u002F010ca3dd18db4c16acf8523184e3b6f5\&quot; img_width&#x3D;\&quot;618\&quot; img_height&#x3D;\&quot;378\&quot; alt&#x3D;\&quot;伊朗发行新货币,直接挂钩人民币,经济重启\&quot; inline&#x3D;\&quot;0\&quot;\u003E\u003Cp class&#x3D;\&quot;pgc-img-caption\&quot;\u003E\u003C\u002Fp\u003E\u003C\u002Fdiv\u003E\u003Cp\u003E对伊朗,来说,货币兑换有其自身的原因。除了旧货币严重贬值之外,在过去一段时间里,伊朗还与印度,欧洲和其他国家交换了一些钞票。最初,这些国家名义上帮助伊朗度过了难关。然而,自去年底以来,一些以境外流通为名的假币开始出现在伊朗市场,制造出的假币足以混淆事实。一些俄罗斯媒体认为这是美国金融战争的一部分,因为世界上其他国家没有动机冒这样的信用风险来打击伊朗经济。\u003C\u002Fp\u003E\u003Cp\u003E目前,世界上大多数国家的经济仍处于停滞状态。伊朗提前恢复了经济,一种新的货币随之诞生。虽然这可能不会令伊朗的经济较去年更好,但却可以令伊朗的经济倒退少一点,从而在世界上进一步排名。随着伊朗,石油以外的商品出口比例的增加,伊朗不仅推出了一种与人民币挂钩的新纸币,这是世界上最好的真实信用货币,而且还与数字人民币的未来发展挂钩。\u003C\u002Fp\u003E\u003Cdiv class&#x3D;\&quot;pgc-img\&quot;\u003E\u003Cimg src&#x3D;\&quot;http:\u002F\u002Fp9.pstatp.com\u002Flarge\u002Fpgc-image\u002F26814e4eb10646fcb8197337fd6eec43\&quot; img_width&#x3D;\&quot;621\&quot; img_height&#x3D;\&quot;390\&quot; alt&#x3D;\&quot;伊朗发行新货币,直接挂钩人民币,经济重启\&quot; inline&#x3D;\&quot;0\&quot;\u003E\u003Cp class&#x3D;\&quot;pgc-img-caption\&quot;\u003E\u003C\u002Fp\u003E\u003C\u002Fdiv\u003E\u003Cp\u003E伊朗这次选择了正确的道路。未来,随着数字人民币的引入,伊朗将逐步完全摆脱国际贸易中的美元制裁,回归正常国家的地位。我们应该知道,过去40年来,伊朗一直受到美国的制裁,这也是人们批评它不如巴列维时期的一个重要原因。一旦美国不能对伊朗,实施制裁,伊朗应该能够在经济发展方面做很多事情。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cbr\u003E\u003C\u002Fp\u003E&quot;'.slice(6, -6),

    转码后:

    content: '"<p>目前,伊朗里亚尔已经找到了一个合适的美元汇率。伊朗黑市和伊朗国家银行之间的汇率差异超过4倍。这在世界上更加罕见。这种情况的根源是美国对伊朗实施了最严厉的制裁。美国银行没有为任何伊朗货币和货物提供任何服务。伊朗货币很难流通。早在对伊朗,相对温和的奥巴马,伊朗里亚尔就经历了数十次贬值,最少达到40,000: 1。现在美国对伊朗,和伊朗里亚尔实施了更严厉的制裁,实际汇率肯定低于此。</p><div class=\"pgc-img\"><img src=\"http://p1.pstatp.com/large/pgc-image/00668b73977e48ad9dce70dff9d092d8\" img_width=\"616\" img_height=\"415\" alt=\"伊朗发行新货币,直接挂钩人民币,经济重启\" inline=\"0\"><p class=\"pgc-img-caption\"></p></div><p>2020年5月4日,伊朗议会最终通过《伊朗货币和银行法》,决定将里亚尔将会改为新货币“图们江”。新货币将以1元兑换1万里亚尔元,伊朗,与人民币的汇率预计为1: 1。事实上,早在今年3月,伊朗就决定在国际贸易中使用人民币结算,因为它无法购买医疗用品。现在,人民币汇率问题是第一步。</p><p>伊朗发行的新货币将与里亚尔共存一段时间。新货币的目的首先是稳定金融秩序,其次是从5月2日起重新启动伊朗经济。这是一个极好的机会。过去,作为一个拥有数千万人口的国家,它会消耗大量资源来取代纸币。现在是时候利用经济停滞和重启来完成货币替换了。</p><div class=\"pgc-img\"><img src=\"http://p9.pstatp.com/large/pgc-image/010ca3dd18db4c16acf8523184e3b6f5\" img_width=\"618\" img_height=\"378\" alt=\"伊朗发行新货币,直接挂钩人民币,经济重启\" inline=\"0\"><p class=\"pgc-img-caption\"></p></div><p>对伊朗,来说,货币兑换有其自身的原因。除了旧货币严重贬值之外,在过去一段时间里,伊朗还与印度,欧洲和其他国家交换了一些钞票。最初,这些国家名义上帮助伊朗度过了难关。然而,自去年底以来,一些以境外流通为名的假币开始出现在伊朗市场,制造出的假币足以混淆事实。一些俄罗斯媒体认为这是美国金融战争的一部分,因为世界上其他国家没有动机冒这样的信用风险来打击伊朗经济。</p><p>目前,世界上大多数国家的经济仍处于停滞状态。伊朗提前恢复了经济,一种新的货币随之诞生。虽然这可能不会令伊朗的经济较去年更好,但却可以令伊朗的经济倒退少一点,从而在世界上进一步排名。随着伊朗,石油以外的商品出口比例的增加,伊朗不仅推出了一种与人民币挂钩的新纸币,这是世界上最好的真实信用货币,而且还与数字人民币的未来发展挂钩。</p><div class=\"pgc-img\"><img src=\"http://p9.pstatp.com/large/pgc-image/26814e4eb10646fcb8197337fd6eec43\" img_width=\"621\" img_height=\"390\" alt=\"伊朗发行新货币,直接挂钩人民币,经济重启\" inline=\"0\"><p class=\"pgc-img-caption\"></p></div><p>伊朗这次选择了正确的道路。未来,随着数字人民币的引入,伊朗将逐步完全摆脱国际贸易中的美元制裁,回归正常国家的地位。我们应该知道,过去40年来,伊朗一直受到美国的制裁,这也是人们批评它不如巴列维时期的一个重要原因。一旦美国不能对伊朗,实施制裁,伊朗应该能够在经济发展方面做很多事情。</p><p><br></p>"'.slice(6, -6),

    上面这一步转码主要是转换\u003Cp\u003E这些字符用的,&#x3D;\&quot;之类的字符可以发现并没有正常转码。为什么没正常转码我也不知道。

    那么我们直接把这些字符给替换下

    \&quot; img_width替换为.jpg" img_width
    
    &#x3D;\&quot;替换为="
    
    \&quot; 替换为"
    
    \&quot;替换为"

    上面第三个\&quot;后面有个空格类的字符,直接复制即可。

    然后我们设置一下HTML标签排除的选项,图像和段落这些标签不要选,保留下来。

    火车头采集今日头条文章教程

    我们测试下看看正文采集的效果吧

    火车头采集今日头条文章教程

    可以看到正文已经全部显示正常,图片标签也正常了。

    到这里今日头条的采集基本就完成了大半了。

    下面还有个重要的问题

    今日头条好像有限制采集的,因为本人在采集过程中发现过采集内容为空的现象。可能是被检测到了UA或者是访问频率,或者其他导致的。

    期间尝试了很多方法,有时候有效有时候又无效。整的我有点蒙逼。这一块目前还在跟今日头条斗智斗勇之中。目前这一块给不了大家太多的帮助。

    建议是采集速度可以设置为1000ms到2000ms,采集线程设置为1,先这样降低下采集速度。

    火车头采集今日头条文章教程

    其他可以测试今日头条防采集策略的设置可以看下HTTP请求设置。

    这里面可以更改cookie和UA设置

    火车头采集今日头条文章教程
    声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

    给TA打赏
    共{{data.count}}人
    人已打赏
    广告位招租919838898
    0 条回复 A文章作者 M管理员
      暂无讨论,说说你的看法吧
    个人中心
    购物车
    优惠劵
    今日签到
    有新私信 私信列表
    搜索