Python3.0 如何抓取网页
用Python来抓取网页是很容易的,前面也写过很多类似的内容,但在Python3.0中,内容多多少少有些不同,下面进行一下介绍.
简单的抓取网页:
import urllib.request url="http://google.cn/" response=urllib.request.urlopen(url) page=response.read()
这样虽然简单,但如果需要进一步精细的控制就略显不足了,在Python 3.0中,将2.x中urllib和urllib2进行了整合,使得抓取网页变得足够的简单了.具体的,大家都知道,网页抓取实际上分为2步:第一步是发出请求,第二步接收服务器返回的数据,在Python中也是这么做的.
import urllib.parse import urllib.request url="http://liuxin-blog.appspot.com/messageboard/add" values={"content":"命令行发出网页请求测试"} data=urllib.parse.urlencode(values) #创建请求对象 req=urllib.request.Request(url,data) #获得服务器返回的数据 response=urllib.request.urlopen(req) #处理数据 page=response.read()
上面的是POST的数据,众所周知,还有一种GET的,怎么做了?
import urllib.parse import urllib.request url="http://www.google.cn/webhp" values={"rls":"ig"} data=urllib.parse.urlencode(values) theurl=url+"?"+data #创建请求对象 req=urllib.request.Request(theurl) #获得服务器返回的数据 response=urllib.request.urlopen(req) #处理数据 page=response.read()
上面2个例子中的response对象有2个常用的方法,geturl(),info()
geturl()的设置是为了辨别是否有服务器端的网址重定向,而info()则包含了一系列的信息.
另外一个重要的内容就是错误处理了,这里错误处理比较简单,贴个代码大家自己琢磨吧
from urllib.request import Request, urlopen from urllib.error import URLError, HTTPError req = Request(someurl) try: response = urlopen(req) except HTTPError, e: print('The server couldn/'t fulfill the request.') print('Error code: ', e.code) except URLError, e: print('We failed to reach a server.') print('Reason: ', e.reason) else: # everything is fine
最后一个是关于认证的了,网页认证如果大家有相关的网址请发一个过来(没有测试不方便发),关于Cookie认证的以后再写
Python3.0 如何抓取网页相关推荐
- python3实现抓取网页资源的 N 种方法(内附200GPython学习资料)
这两天学习了python3实现抓取网页资源的方法,发现了很多种方法,所以,今天添加一点小笔记. 文章最后为各位小伙伴提供超级彩蛋!不要错过了! 1.最简单 import urllib.request ...
- .NET2.0抓取网页全部链接【月儿原创】
.NET2.0抓取网页全部链接 作者:清清月儿 主页:http://blog.csdn.net/21aspnet/ 时间:2007.4.18 该方法经过对各大门户网站测试结果是抓取 ...
- python抓取图片_Python3简单爬虫抓取网页图片
现在网上有很多python2写的爬虫抓取网页图片的实例,但不适用新手(新手都使用python3环境,不兼容python2), 所以我用Python3的语法写了一个简单抓取网页图片的实例,希望能够帮助到 ...
- python中模拟浏览器抓取网页(-)
对于平时我们抓取网页的内容时,比较倾向于直接利用urllib进行抓取(这里我就基于python的2.7版本进行解说,对于python3之后的版本,是将python中的urllib和urllib2和并成 ...
- Python 爬虫篇#笔记02# | 网页请求原理 和 抓取网页数据
目录 一. 网页请求原理 1.1 浏览网页的过程 1.2 统一资源定位符URL 1.3 计算机域名系统DNS 1.4 分析浏览器显示完整网页的过程 1.5 客户端THHP请求格式 1.6 服务端HTT ...
- python抓取网站重要url_[Python]网络爬虫(一):抓取网页的含义和URL基本构成
一.网络爬虫的定义 网络爬虫,即Web Spider,是一个很形象的名字. 把互联网比喻成一个蜘蛛网,那么Spider就是在网上爬来爬去的蜘蛛. 网络蜘蛛是通过网页的链接地址来寻找网页的. 从网站某一 ...
- python简单好玩的代码_Python初学者好玩案例(一):最短的抓取网页图片代码,只有10行...
这几天闲来无事,又研究了一下Python的基础内容,首先研究的是如何抓取网页数据.为什么把这篇作为初学者笔记呢?只是想让大家感受一下Python的强大的功能和简便的用法. 发现大神们通常在初级教程里就 ...
- Python 多线程抓取网页 牛人 use raw socket implement http request great
Python 多线程抓取网页 - 糖拌咸鱼 - 博客园 Python 多线程抓取网页 最近,一直在做网络爬虫相关的东西. 看了一下开源C++写的larbin爬虫,仔细阅读了里面的设计思想和一些关键技术 ...
- cookie追加数据_集算器 SPL 抓取网页数据
[摘要] 集算器 SPL 支持抓取网页数据,根据抓取定义规则,可将网页数据下载到在本地进行统计分析.具体定义规则要求.使用详细情况,请前往乾学院:集算器 SPL 抓取网页数据! 网站上的数据源是我们进 ...
最新文章
- SVN详解-linux+windows
- python构造icmp数据包_如何在python中构造ICMP数据包
- 浅析那些你不知道的提升企业网站转化率的SEO优化技巧 !
- myeclipse打开jsp页面慢或者卡死
- 后端:循环遍历的用法介绍
- matlab的循环语句裁图,[MATLAB图像处理] 多幅图片处理的循环语句
- 腾讯开源智能运维项目,用机器学习减少人为失误
- vbs程序批量禁用域用户然后移动到指定OU
- 5输入的多数表决器(结构化建模)
- Xp系统优化 服务相关命令(6)
- 《高分辨率被动微波遥感——综合孔径微波辐射成像》附录仿真代码
- 基于ThinkPHP6组件化开发框架
- 各种图片格式之间的差别
- shell小技巧(五)把以abc开头的下一行以def结尾的两行替换成douyu
- 公交查询系统Android源代码,公交查询源码
- chm转换html,chm无法用浏览器打开,Windows下如何把chm转换为html?
- 在matlab中画收敛域,已知用下列差分方程描述的一个线性移不变因果系统(用MATLAB方法求解)。y(n)=y(n-1)+y(n-2)十x(n-1.. - 上学吧找答案...
- 电脑狂、理论家、情报员……你是哪种类型的软件工程师?
- dll注册加载失败解决方法,请确保二进制的解决办法(无数踩坑试出来的)
- 数字信息-数字编码挂钩法