使用php优采云采集器抓取今日头条ajax文章

优采云 发布时间: 2020-08-30 13:10

  使用php优采云采集器抓取今日头条ajax文章

  使用优采云采集器爬取昨日头条ajax内容

  今日头条的数据都是ajax加载显示的,按照正常的url是抓取不到数据的,需要剖析出加载出的网址,我们以/search/?keyword=%E6%96%B0%E9%97%BB 为例来采集列表的文章

  用谷歌浏览器打开链接,右键点击“审查”在控制台切换至network并点击XHR,这样就可以过滤图片、文件等等不必要的恳求只看页面内容的恳求

  

  由于页面是ajax加载的,所以将页面拉至最顶部,会手动加载出更多文章,这时候控制台抓取到的链接就是我们真正须要的列表页链接:

  /search_content/?offset=20&format=json&keyword=%E6%96%B0%E9%97%BB&autoload=true&count=20&cur_tab=1&from=search_tab

  在优采云采集器中创建一个任务

  

  创建完毕点击“采集器设置”,在“起始页网址”中填入里面抓取到的链接

  

  接下来匹配内容页网址,头条的文章网址格式是/group/数字/

  点击“内容页网址”编写“匹配内容网址”规则: (?/group/\d+/)

  这是个正则规则,意思就是把匹配的网址装进捕获组content1中,然后在下边填写[内容1] 即对应里面的content1 就可获取到内容页链接

  

  可以点击测试查看是否成功抓取到了链接

  

  抓取成功就可以开始获取内容了

  点击“获取内容”在数组列表一侧可以添加默认的数组,如标题、正文等都可以智能辨识,如需精准还可以自行编辑数组,支持正则、xpath、json等匹配内容

  我们须要抓取文章的标题和正文,由于是ajax显示的所以要写规则匹配出内容,分析篇源码:/a6358823350874145025/ ,找到文章位置

  

  

  标题规则:articleInfo\s*:\s*{\s*title:\s*'[内容1]',

  正文规则:content\s*:\s*'[内容1]',\s*groupId

  规则必须保证唯一性,不然会匹配到其他内容起来,将规则添加到数组中,获取方法选规则匹配:

  

  规则编撰完后点击保存,点击“测试”看看疗效怎么

  

  规则无误,抓取正常,抓取到的数据还可以发布到cms系统、直接数据库入库、保存为excel文件等,点击顶部导航条的“发布设置”即可,好了明日头条的采集到这儿就结束了,大家不妨动手试试!

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线