-
python如何抓取网页
- 时间:2024-11-23 07:39:39
大家好,今天Win10系统之家小编给大家分享「python如何抓取网页」的知识,如果能碰巧解决你现在面临的问题,记得收藏本站或分享给你的好友们哟~,现在开始吧!
1.python网页爬虫教程
在当前环境下,大数据和人工智能的重要支撑仍然是庞大的数据和分析集合。类似淘宝、JD.COM、百度、腾讯这样的企业,可以通过一个拥有可观数据的用户群体来获取所需的数据,而一般企业可能没有能力和条件通过产品获取数据。如果你想从事这项工作,你需要掌握以下知识:
1.学习Python基础知识,实现基本的爬虫流程。
获取数据的过程一般如下:发送请求、获取页面反馈、解析、存储数据。
实现了这三个过程。这个过程实际上模拟了一个手动浏览网页的过程。
Python中有很多爬虫相关的包:urllib、requests、bs4、scrapy、pyspider等。我们可以负责连接网站,根据请求返回网页,Xpath用于解析网页,方便提取数据。
2.了解非结构化数据的存储
爬虫爬出来的数据结构比较复杂,传统的结构化数据库不一定特别适合我们使用。前期推荐MongoDB。
3.
掌握一些常见的反爬虫技巧。
使用池、数据包捕获、验证码OCR处理等处理方法,可以解决大部分网站的反爬虫策略。
4.了解分布式存储
这个分布式的东西听起来很可怕,但实际上是利用了多线程的原理,让多个爬虫同时工作。你需要掌握Scrapy MongoDB Redis。
三种工具都可以。
2.如何使用 Python 抓取雪球网页
Step.1 分析页面
要抓一个网页,首先自然是要“研究”这个网页。通常我会用两种方式:
一个是 Chrome 的 Developer Tools。通过它里面的 Network 功能可以看到页面发出的所有网络请求,而大多数数据请求都会在 XHR 标签下。点击某一个请求,可以看到其具体信息,以及服务器的返回结果。很多网站在对于某些数据会有专门的请求接口,返回一组 json 或者 XML 格式的数据,供前台处理后显示。
Step.2 获取页面
分析完毕,开抓。
直接 urllib.urlopen 向目标网页发送请求,读出网页。结果,失败了……
看了下返回结果:
403 Forbidden
You dont have permission to access the URL on this server. Sorry for the inconvenience.
被拒了,所以这种赤裸裸地请求是不行的。没关系,那就稍微包装一下:
send_headers = {
User-Agent:Mozilla/5.0 (Macintosh; Intel Mac OS X
10_10_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.81 Safari/537.36,
Accept:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8,
Connection:keep-alive,
Host:xueqiu.com,
Cookie:rxxxxxx,
}
req = urllib2.Request(url, headers=send_headers)
resp = urllib2.urlopen(req)
html = resp.read()
header 数据都可以从 Developer Tools 里拿到。这次顺利抓到页面内容。
一般网站或多或少都会对请求来源做一些阻拦,通过加 header 可以搞定大部分情况。
Step.3 提取数据
因为这个数据比较明显,直接用通过一些字符串查找和截取操作就可以取出来。
pos_start = html.find(SNB.cubeInfo = ) + len(SNB.cubeInfo = )
pos_end = html.find(SNB.cubePieData)
data = html[pos_start:pos_end]
dic = json.loads(data)
dic
就是一个包含数据的字典对象。之后想干什么就随便你了。
对于复杂一点的情况,可以通过 BeautifulSoup 来定位 html 标签。再不好办的,就用正则表达式,基本都可以解决掉。
以上就是关于「python如何抓取网页」的全部内容,本文讲解到这里啦,希望对大家有所帮助。如果你还想了解更多这方面的信息,记得收藏关注本站~
【文♀章②来自Win10系统之家,转载请联系网站管理人员!】
相关文章
-
1.python网页爬虫教程在当前环境下,大数据和人工智能的重要支撑仍然是庞大的数据和分析集合。类似淘宝、JD.COM、百度、腾讯这样的企业,可以通过一个拥有可观数据的用户群体来获取所需的数据,而一般企业可能没有能力和条...
-
1.如何取消“是否只查看安全传送的网页内容”提示我们用浏览器打开某些网页时,有时会弹出“是否只查看安全传送的网页内容”对话框。每次都需要对其进行关闭,这给我们上网带来了不便。今天小编就跟大家分享下解决这个问题...
-
1.如何设置电脑中打开网页窗口时都是最大化方法一:先把所有的IE窗口关了;只打开一个IE窗口;最大化这个窗口;关了它;OK,以后的默认都是最大化的了方法二:先关闭所有的IE浏览器窗口,用鼠标右键点击快速启动栏的IE浏览...
-
1.怎样截取网页中的视频原发布者:漱玉泉325教你如何提取网页中的视频、音乐歌曲、flash、图片等多媒体文件(很实用)打开网页后,发现里面有好看的视频、好听的音乐、好看的图片、很炫的flash,是不是想把它们弄到自己电脑上...