python爬取腾讯新闻_python爬虫实战――爬取腾讯新闻 !
无论我们通过浏览器打开网站、访问网页,还是通过脚本对URL网址进行访问,本质上都是对HTTP服务器的请求,浏览器上所呈现的、控制台所显示的都是HTTP服务器对我们请求的响应。
以打开腾讯新闻官网为例,我们在地址栏输入“http://news.qq.com/”,浏览器上呈现的是下图:
Python学习交流群:1004391443,这里有资源共享,技术解答,还有小编从最基础的Python资料到项目实战的学习资料都有整理,希望能帮助你更了解python,学习python。
按F12打开网页调试工具,选择“network”选项卡,可以看到我们对http://news.qq.com/的请求,以及http://news.qq.com/给我们的响应:
1 .打开代码编辑器,输入以下代码:
这样,就完成了一个简单的对 news.qq.com 的HTTP请求。
结果返回的是:200
再看看响应的主体消息:
data.content
结果返回了一大串编码了的HTML源码,这些HTML源码未经解码和解析,看上起很是凌乱 , 对这些凌乱的html源码进行处理,则就需要使用到BeautifulSoup模块了。
首先在使用python的第三方库之前要导入requests和BeautifulSoup,其中requests是一个方便、简洁、高效且人性化的HTTP请求库, BeautifulSoup是HTML解析库。
写这个爬虫首先要获得该网页的html代码,然后用BeautifulSoup库进行解析,然后再分析一下腾讯新闻的html结构。
1 .寻找数据特征
腾讯新闻的网址URL为:http://news.qq.com/
我们打开网页看看:
我们需要爬取的是这个页面每一条新闻的标题,鼠标右击一条新闻的标题,选择“查看元素”,出现下图的窗口:
则图片中红框的位置就是那一条新闻标题在HTML中的结构、位置和表现形式:
它上一级元素为:
运行爬取结果:
代码解析:
1)# coding:utf-8
2)import requests from bs4 import BeautifulSoup
我们引入了相关的模块,requests用于HTTP请求,BeautifulSoup用于解析HTML响应。
3)url = "http://news.qq.com/"
设置一个变量url,值为腾讯新闻的URL
4) wbdata = requests.get(url).text
使用requests.get()对URL发起GET方式的HTTP请求,并使用text()方法获取响应的文本内容,最后将其赋值给变量wbdata。
5)soup = BeautifulSoup(wbdata,'lxml')
使用BeautifulSoup对响应文本wbdata进行解析处理,这里使用的是lxml库,如何没有安装,可以使用Python自带的html.parser,效果也是一样的。
6)news_titles = soup.select("div.text > em.f14 > a.linkto")
在解析后的文本中,使用select选择器,在文本中选择指定的元素,通常我们还会使用find()和findall()方法来进行元素选择。
这一步返回的为一个列表,列表内的元素为匹配的元素的HTML源码。
对结果列表进行遍历,再从遍历的元素中提取出数据,get(“href”)表示获取属性名为“href”的属性值,get_text()表示获取标签的文本信息。
这样,一个简单的腾讯新闻爬虫就完成了
python爬取腾讯新闻_python爬虫实战――爬取腾讯新闻 !相关推荐
- python爬取历史天气查询_Python爬虫实战-爬取历史天气数据
最近项目需要对合肥市历史天气数据进行爬取,分析了几个天气数据网站,最终选择天气后报网站. 将实现过程遇到的问题以及下来,供以后参考. 步骤分析 这里我使用的是Python中的requests库Beau ...
- python爬取小说项目概述_Python爬虫实战——爬取《斗破苍穹》全文小说(基于re模块)...
目标 思路 手动浏览前几章节,观察url网址变化,以下为前4章节网址: 可以看到,第1和第2章节没有明显规律,第2章节以后规律明显,通过数字递加来分页.手动输入http://www.doupoxs.c ...
- python爬取boss直聘招聘信息_Python爬虫实战-抓取boss直聘招聘信息
Python Python开发 Python语言 Python爬虫实战-抓取boss直聘招聘信息 实战内容:爬取boss直聘的岗位信息,存储在数据库,最后通过可视化展示出来 PS注意:很多人学Pyth ...
- python爬网易新闻_Python爬虫实战教程:爬取网易新闻
前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者: Amauri PS:如有需要Python学习资料的小伙伴可以加点击 ...
- python爬网易新闻_Python爬虫实战教程:爬取网易新闻;爬虫精选 高手技巧
Python爬虫实战教程:爬取网易新闻:爬虫精选 高手技巧 发布时间:2020-02-21 17:42:43 前言本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有, ...
- python爬取多页数据_python爬虫实现爬取同一个网站的多页数据代码实例
本篇文章小编给大家分享一下python爬虫实现爬取同一个网站的多页数据代码实例,文章代码介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看. 一.爬虫的目的 从网上获 ...
- python爬取链家新房_Python爬虫项目--爬取链家热门城市新房
本次实战是利用爬虫爬取链家的新房(声明: 内容仅用于学习交流, 请勿用作商业用途) 环境 win8, python 3.7, pycharm 正文 1. 目标网站分析 通过分析, 找出相关url, 确 ...
- python爬取汽车之家_python爬虫实战之爬取汽车之家网站上的图片
随着生活水平的提高和快节奏生活的发展.汽车开始慢慢成为人们的必需品,浏览各种汽车网站便成为购买合适.喜欢车辆的前提.例如汽车之家网站中就有最新的报价和图片以及汽车的相关内容,是提供信息最快最全的中国汽 ...
- python爬虫爬取58网站数据_Python爬虫,爬取58租房数据 字体反爬
Python爬虫,爬取58租房数据 这俩天项目主管给了个爬虫任务,要爬取58同城上福州区域的租房房源信息.因为58的前端页面做了base64字体加密所以爬取比较费力,前前后后花了俩天才搞完. 项目演示 ...
最新文章
- MySQL面试题 | 附答案解析(九)
- undefined reference to `__android_log_print'
- 聊天机器人中的深度学习技术(引言)
- go 写文件_Pythonista 的 Go 之旅
- js嵌套函数内外层分别使用this关键字困局解
- draw9patch做一个中心不变形的图片
- ionic3-ng4学习见闻--(多环境方案)
- Realtek显示芯片方案设计 RTD2270 RTD2281 RTD2513 RTD2525 RTD2556 RTD2785 RTD2795T 2796 VGA DVI HDMI DP转LVDS
- 【FPGA】DS18B20温度显示
- 极简局域网(windows)桌面同屏软件
- 求助,关于MFC中的 Secur32.lib问题
- 什么时候需要用到RCC_APB2Periph_AFIO–复用IO时钟的使用
- HDU 2036 (平面几何 多边形面积)
- 网站制作必备-在线按钮生成器,LOGO生成器,背景生成器,ICO图标生成器,和许多在线小工具...
- 阿里巴巴国际站组合标题的小技巧
- 今天是10月24日程序员节,祝所有程序员节日快乐!
- 华为公司 代码编码规范
- C++ 输入输出(cin cout)加速/效率优化
- CFML----一门在国外很多大公司得到应用的语言
- 《缠中说禅108课》66:主力资金的食物链