用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 如何抓取网页相关推荐

  1. python3实现抓取网页资源的 N 种方法(内附200GPython学习资料)

    这两天学习了python3实现抓取网页资源的方法,发现了很多种方法,所以,今天添加一点小笔记. 文章最后为各位小伙伴提供超级彩蛋!不要错过了! 1.最简单 import urllib.request ...

  2. .NET2.0抓取网页全部链接【月儿原创】

    .NET2.0抓取网页全部链接 作者:清清月儿 主页:http://blog.csdn.net/21aspnet/           时间:2007.4.18 该方法经过对各大门户网站测试结果是抓取 ...

  3. python抓取图片_Python3简单爬虫抓取网页图片

    现在网上有很多python2写的爬虫抓取网页图片的实例,但不适用新手(新手都使用python3环境,不兼容python2), 所以我用Python3的语法写了一个简单抓取网页图片的实例,希望能够帮助到 ...

  4. python中模拟浏览器抓取网页(-)

    对于平时我们抓取网页的内容时,比较倾向于直接利用urllib进行抓取(这里我就基于python的2.7版本进行解说,对于python3之后的版本,是将python中的urllib和urllib2和并成 ...

  5. Python 爬虫篇#笔记02# | 网页请求原理 和 抓取网页数据

    目录 一. 网页请求原理 1.1 浏览网页的过程 1.2 统一资源定位符URL 1.3 计算机域名系统DNS 1.4 分析浏览器显示完整网页的过程 1.5 客户端THHP请求格式 1.6 服务端HTT ...

  6. python抓取网站重要url_[Python]网络爬虫(一):抓取网页的含义和URL基本构成

    一.网络爬虫的定义 网络爬虫,即Web Spider,是一个很形象的名字. 把互联网比喻成一个蜘蛛网,那么Spider就是在网上爬来爬去的蜘蛛. 网络蜘蛛是通过网页的链接地址来寻找网页的. 从网站某一 ...

  7. python简单好玩的代码_Python初学者好玩案例(一):最短的抓取网页图片代码,只有10行...

    这几天闲来无事,又研究了一下Python的基础内容,首先研究的是如何抓取网页数据.为什么把这篇作为初学者笔记呢?只是想让大家感受一下Python的强大的功能和简便的用法. 发现大神们通常在初级教程里就 ...

  8. Python 多线程抓取网页 牛人 use raw socket implement http request great

    Python 多线程抓取网页 - 糖拌咸鱼 - 博客园 Python 多线程抓取网页 最近,一直在做网络爬虫相关的东西. 看了一下开源C++写的larbin爬虫,仔细阅读了里面的设计思想和一些关键技术 ...

  9. cookie追加数据_集算器 SPL 抓取网页数据

    [摘要] 集算器 SPL 支持抓取网页数据,根据抓取定义规则,可将网页数据下载到在本地进行统计分析.具体定义规则要求.使用详细情况,请前往乾学院:集算器 SPL 抓取网页数据! 网站上的数据源是我们进 ...

最新文章

  1. SVN详解-linux+windows
  2. python构造icmp数据包_如何在python中构造ICMP数据包
  3. 浅析那些你不知道的提升企业网站转化率的SEO优化技巧 !
  4. myeclipse打开jsp页面慢或者卡死
  5. 后端:循环遍历的用法介绍
  6. matlab的循环语句裁图,[MATLAB图像处理] 多幅图片处理的循环语句
  7. 腾讯开源智能运维项目,用机器学习减少人为失误
  8. vbs程序批量禁用域用户然后移动到指定OU
  9. 5输入的多数表决器(结构化建模)
  10. Xp系统优化 服务相关命令(6)
  11. 《高分辨率被动微波遥感——综合孔径微波辐射成像》附录仿真代码
  12. 基于ThinkPHP6组件化开发框架
  13. 各种图片格式之间的差别
  14. shell小技巧(五)把以abc开头的下一行以def结尾的两行替换成douyu
  15. 公交查询系统Android源代码,公交查询源码
  16. chm转换html,chm无法用浏览器打开,Windows下如何把chm转换为html?
  17. 在matlab中画收敛域,已知用下列差分方程描述的一个线性移不变因果系统(用MATLAB方法求解)。y(n)=y(n-1)+y(n-2)十x(n-1.. - 上学吧找答案...
  18. 电脑狂、理论家、情报员……你是哪种类型的软件工程师?
  19. dll注册加载失败解决方法,请确保二进制的解决办法(无数踩坑试出来的)
  20. 数字信息-数字编码挂钩法

热门文章

  1. 与爱同行,育润走进贫困家庭,助推公益事业
  2. PPP概念股一览 PPP概念股盈利预测
  3. Hive 数据倾斜问题定位排查及解决(实际案例)
  4. 华为手机输入键盘声音_华为键盘声音怎么设置
  5. 【openMP并行计算】计算π
  6. PWM转4~20mA电路
  7. Oracle Core: Essential Internals for DBAs and Developers
  8. 【数据库】MySQL入门
  9. IE浏览器不能上网其他浏览器可以解决办法
  10. 郭禹缘:鲍威尔释放鹰派言论,国际黄金或跌势重启后市分析。