最近一直在看Python的基础语法知识,五一假期手痒痒想练练,正好《人民的名义》刚结束,于是决定扒一下头条上面的人名的名义文章,试试技术同时可以集中看一下大家的脑洞也是极好的。

首先,我们先打开头条的网页版,在右上角搜索框输入关键词,通过chrome调试工具,我们定位到头条的search栏调用的的API为:

http://www.toutiao.com/search_content/?offset=0&format=json&keyword=%E4%BA%BA%E6%B0%91%E7%9A%84%E5%90%8D%E4%B9%89&autoload=true&count=20&cur_tab=1

其返回的数据是标准的json,所有的相关文章链接在data中,key值为article_url,好准备工作完成,我们开始动手coding。

首先,我们构造头条必要的search条件:

query_data = {'offset':offset,'format':'json','keyword':'人民的名义','autoload':'true','count':20,# 每次返回 20 篇文章'cur_tab':1}

当然,我们除了search参数之外,还需要必要的header头信息,仔细查看之后我们可以看到,

我们只选取其中必要的信息,不放cookie;

然后是编码查询条件

其中_get_query_string方法将query_data编码;

拿到article_req之后解析获取当前搜索结果的所有文章链接,实现如下:

获取到文章链接之后,我们打开每一个url进行解析。

此处,我们简单地对article_content进行解析,取出文章标题、内容和图片。

解析完成之后,我们将内容保存到mongo中,方便后续的取数分析。

然后我们运行一下程序,

运行程序的时候我们发现,通过search来搜索最后得到的文章数量有限,只有几十篇文章,估计是头条的限制。

下一篇我们将介绍如何通过一篇文章和相关推荐进行链式爬取所有的关联推荐文章。

python爬取今日头条文章json中data出现none_Python3爬取今日头条有关《人民的名义》文章...相关推荐

  1. (三)Python反爬实战---JS反爬之某网站将json串Data数据加密成一串数字字母

       python反爬经验实战,适合小白入门,新手提升,大牛晋升.包含本人目前遇到反爬汇总,文章一周2-3篇,为了质量考虑,更新较慢,敬请谅解.购买专栏私信博主加微信,可无偿提供学习辅助. 考虑到新手 ...

  2. 抓取网络源码python_python中的复仇者网络抓取实体提取和网络图

    抓取网络源码python 2020 sent more bad news as Black Panther star Chadwick Boseman passed away aged 43. The ...

  3. python大众点评网实训报告中的参考文献_python爬取大众点评网商家信息以及评价,并将数据存储到excel表中(源码及注释)...

    import requests from bs4 import BeautifulSoup import traceback # 异常处理 import xlwt # 写入xls表 # Cookie记 ...

  4. python笔记22-literal_eval函数处理返回json中的单双引号

    前言 在做接口测试的时候,最常见的接口返回数据就是json类型,json类型数据实际上就是字串,通常标准的json格式是可以转化成python里面的对应的数据类型的 有时候开发返回的数据比较坑,不按常 ...

  5. scrapy爬取知名问答网站(解决登录+保存cookies值+爬取问答数据)--完整版完美解决登录问题

    菜鸟写Python:scrapy爬取知名问答网站 实战(3) 一.文章开始: 可能看到这篇文章的朋友,大多数都是受慕课网bobby讲师课程的影响,本人也有幸在朋友处了解过这个项目,但是似乎他代码中登录 ...

  6. python爬取今日头条的文章_Python3爬取今日头条有关《人民的名义》文章

    Python3爬取今日头条有关<人民的名义>文章 最近一直在看Python的基础语法知识,五一假期手痒痒想练练,正好<人民的名义>刚结束,于是决定扒一下头条上面的人名的名义文章 ...

  7. 212:Python学习之爬虫篇——用Json方法爬取某音乐网站任意歌手的歌单

    引言 人生苦短,我用Python.这两天在学爬虫的时候跟着做某音乐网站的歌单爬取,稍作修改,实现了对任意歌手的歌单进行爬取,这里只取前三页.这个项目比较简单,也没有对结果进行储存,稍作修改,可以实现更 ...

  8. python爬取有道词典json报错,求帮助!

    python爬取有道词典json报错,求帮助! import urllib.request import urllib.parse import json import time import ran ...

  9. python爬取json数据_Python爬取数据保存为Json格式的代码示例

    python爬取数据保存为Json格式 代码如下: #encoding:'utf-8' import urllib.request from bs4 import BeautifulSoup impo ...

最新文章

  1. Python中使用中文正则表达式匹配指定的中文字符串
  2. 一个MySQL锁和面试官大战三十回合,我霸中霸!
  3. 面向任务的 Git 学习法
  4. 阿里云徐立:面向容器和 Serverless Computing 的存储创新
  5. 通过ClassLoader加载硬盘上的图片到内存及ImageIO的使用
  6. leetcode704. 二分查找
  7. 整理了一个带语法高亮显示,及到处html功能的richtextbox控件
  8. Tensorflow卷积神经网络
  9. linkedin api php,php – 如何使用linkedin api发送消息/通知?
  10. 韩顺平php开发合集208集-从Html基础到php开发Web QQ实战 共15G
  11. Cesium 高性能扩展之DrawCommand(二):OSGB倾斜模型展示应用
  12. 13.3.4 蓝牙程序案例: 蓝牙串口调试助手
  13. dell5580bios恢复出厂_dell电脑恢复BIOS默认设置教程
  14. 程序员如何转职区块链开发
  15. CSS 边框四个角效果
  16. 配置hMailServer成功,完成邮件异步群发
  17. 分享125个ASP源码,总有一款适合您
  18. 2020年UI设计行业的就业状况如何?
  19. spss为什么有python插件_为什么数据分析会用 Python
  20. Xkeyideal赐教取经之路

热门文章

  1. 智能信息融合与目标识别方法
  2. 共有90款 工作流引擎开源软件
  3. 一定时间后延时变长问题
  4. 应届毕业生所需准备的面试话术及套路回答
  5. [免费专栏] 汽车威胁狩猎之常用的几种威胁狩猎工具
  6. google 的达芬奇密码
  7. 王德华是我哦,粉丝以为我是刘德华
  8. 在Linux中安装Atom编辑器
  9. 计算机学院毕业条幅,欢送毕业生横幅标语
  10. 四问知乎黄继新:慢公司下一步