爬取今日头条https://www.toutiao.com/首页推荐的新闻,打开网址得到如下界面

查看源代码你会发现

全是js代码,说明今日头条的内容是通过js动态生成的。

用火狐浏览器F12查看得知

得到了今日头条的推荐新闻的接口地址:https://www.toutiao.com/api/pc/focus/

单独访问这个地址得到

此接口得到的数据格式为json数据

我们用scrapy+selenium+PhantomJS的方式获取今日头条推荐的内容

下面是是scrapy中最核心的代码,位于spiders中的toutiao_example.py

import scrapyimport jsonfrom selenium import webdriverfrom selenium.webdriver.common.desired_capabilities import DesiredCapabilitiesimport timeimport re '''遇到不懂的问题?Python学习交流群:821460695满足你的需求,资料都已经上传群文件,可以自行下载!'''class ToutiaoExampleSpider(scrapy.Spider): name = 'toutiao_example' allowed_domains = ['toutiao.com'] start_urls = ['https://www.toutiao.com/api/pc/focus/'] ###今日头条焦点的api接口 def parse(self, response): conten_json=json.loads(response.text)  conten_news=conten_json['data'] ###从json数据中抽取data字段数据,其中data字段数据里面包含了pc_feed_focus这个字段,其中这个字段包含了:新闻的标题title,链接url等信息 for aa in conten_news['pc_feed_focus']: title=aa['title'] link_url='https://www.toutiao.com'+aa['display_url'] ###如果写(www.toutiao.com'+aa['display_url'])会报错,加上https://,(https://www.toutiao.com'+aa['display_url'])则不会报错! link_url_new=link_url.replace('group/','a')###把链接https://www.toutiao.com/group/6574248586484122126/,放到浏览器中,地址会自动变成https://www.toutiao.com/a6574248586484122126/这个。所以我们需要把group/ 替换成a  yield scrapy.Request(link_url_new, callback=self.next_parse)  def next_parse(self, response):  dcap = dict(DesiredCapabilities.PHANTOMJS) # 设置useragent信息 dcap['phantomjs.page.settings.userAgent'] = ( 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:25.0) Gecko/20100101 Firefox/25.0 ') # 根据需要设置具体的浏览器信息 driver = webdriver.PhantomJS(desired_capabilities=dcap) #封装浏览器信息) # 指定使用的浏览器,  #driver.set_page_load_timeout(5) # 设置超时时间 driver.get(response.url)##使用浏览器请求页面  time.sleep(3)#加载3秒,等待所有数据加载完毕   title=driver.find_element_by_class_name('title').text ###.text获取元素的文本数据 content1=driver.find_element_by_class_name('abstract-index').text###.text获取元素的文本数据 content2=driver.find_element_by_class_name('abstract').text###.text获取元素的文本数据  content=content1+content2  print(title,content,6666666666666666) driver.close()  #data = driver.page_source# 获取网页文本 #driver.save_screenshot('1.jpg') # 系统截图保存

运行代码我们得到结果为标题加内容呈现方式如下

python抽取指定url页面的title_Python使用scrapy爬虫,爬取今日头条首页推荐新闻相关推荐

  1. python抽取指定url页面的title_Python新手写爬虫全过程记录分析

    目标网站:http://bohaishibei.com/post/category/main/(一个很有趣的网站,一段话配一个图,老有意思了-)网站形式如下: 目标:把大的目标分为几个小的目标.因为第 ...

  2. 利用Ajax爬取今日头条头像,街拍图片。关于崔庆才python爬虫爬取今日头条街拍内容遇到的问题的解决办法。

    我也是初学爬虫,在看到崔庆才大佬的爬虫实战:爬取今日头条街拍美图时,发现有些内容过于陈旧运行程序时已经报错,网页的源代码早已不一样了.以下是我遇到的一些问题. 1.用开发者选项筛选Ajax文件时预览看 ...

  3. python爬虫爬取今日头条_python 简单爬取今日头条热点新闻(一)

    今日头条如今在自媒体领域算是比较强大的存在,今天就带大家利用python爬去今日头条的热点新闻,理论上是可以做到无限爬取的: 在浏览器中打开今日头条的链接,选中左侧的热点,在浏览器开发者模式netwo ...

  4. Python 爬取今日头条的图片新闻

    工具 from urllib.parse import urlencode import requests 网页 进入今日头条,搜索图片新闻 往下进行网页刷新的时候,按f12选择xhr进行筛选可以看到 ...

  5. python爬虫爬取今日头条_Python爬虫实战入门五:获取JS动态内容—爬取今日头条...

    之前我们爬取的网页,多是HTML静态生成的内容,直接从HTML源码中就能找到看到的数据和内容,然而并不是所有的网页都是这样的. 有一些网站的内容由前端的JS动态生成,由于呈现在网页上的内容是由JS生成 ...

  6. python爬虫爬取今日头条_爬取今日头条头条号文章数据

    0,背景介绍 最近想爬取一些今日头条的文章浏览数据,分析哪些头条号做的好,那些做的不好. 今日头条 比如上图的阅读数,评论数以及文章标题,通过这些数据进行分析. 于是展开了艰难的爬虫探索之旅 第一目标 ...

  7. python爬取今日头条后台数据_爬虫爬取今日头条数据代码实现

    课程链接 讲师的公众号文章:今日头条数据抓取及持久化(完整代码版,含IP和用户代理)​mp.weixin.qq.com 课程代码 抓取并持久化user-agent工具utils.py 对于爬虫工具,需 ...

  8. python爬虫-爬取今日头条(图集)

    1.工具使用 python的request包和json包 fiddle抓包工具 2.请求分析 我们访问该页面,抓取请求,得到如下结果. 不难发现,在图片加载之前数据量最大的就是search_conte ...

  9. python爬取今日头条专栏_[python3]今日头条图片爬取

    前言 代码设计流程,先模拟ajax发送搜索"街拍美女",提取返回json里面的article_url,再访问article_url,提取article_url响应的图片url,访问 ...

最新文章

  1. 敲代码括号技巧_阅码神奇Souceinsight使用小技巧总结
  2. P4722 【模板】最大流
  3. Prim算法求权数和,POJ(1258)
  4. QML基础类型之geocircle
  5. leetcode-237-删除链表中的节点
  6. 【机器学习】机器学习从零到掌握之十三 -- 教你理解Logistics回归之梯度上升算法
  7. JavaScript 演练(4). 回调函数
  8. 如果地球突然停止转动,那么接下来会发生什么?
  9. 硬件创业者们,如何避免掉到供应链的大坑里爬不出来
  10. Linux下如何查看定位当前正在运行的Nginx的配置文件
  11. nfs文件共享服务器搭建详解
  12. python好玩的代码-我珍藏的一些好的Python代码,技巧
  13. Spring实现统一捕获接口层异常与邮件警报
  14. 如何用定积分求椭圆的周长_怎么用微积分求椭圆的周长?
  15. java阿法狗国际象棋_[转帖]被阿法狗和AlphaZero刷屏之后,聊聊国际象棋和中国象棋AI...
  16. 什么是JSP,JSP的运行原理是什么?
  17. 桌面上计算机图标被误删,电脑桌面图标被误删?两个方法轻松帮你找回,根本不需要重装系统...
  18. 爬虫练习 -- 链家
  19. 【Golang之路】——slice总结
  20. OpenCASCADE入门指南

热门文章

  1. 项目运行报错java.sql.SQLSyntaxErrorException: Table ‘sell.hibernate_sequence‘ doesn‘t exist
  2. android系统中与内存有关的文件及路径
  3. Vue + Spring Boot 学习笔记01:实现用户登录功能
  4. VB讲课笔记02:VB程序开发环境
  5. seaborn pairplot ax_强者致胜 AX电竞叛客RTX3070显卡发布_
  6. 2017.7.27 排列perm 思考记录
  7. 【英语学习】【Level 07】U06 First Time L1 My very first trip
  8. 【英语学习】【Daily English】U14 Transportation L02 I'm afraid that you're going in the wrong direction.
  9. Intel 64/x86_64/IA-32/x86处理器 - SIMD指令集 - SSE扩展(2) - SSE程序设计环境概述
  10. seo 伪原创_seo伪原创工具(解析新云查新型伪原创模式工具)