【天善学院】自己动手,丰衣足食!Python3网络爬虫实战案例 附讲义与代码 6 A+所属分类:Python教程

自己动手,丰衣足食!Python3网络爬虫实战案例

适宜人群:

  • 萌新小白:我连爬虫也不知道是什么
  • 入门菜鸟:我对一些爬虫的用法还不是很熟练
  • 老司机:我想学习更高级的框架及分布式

从环境基础到进阶分布式,由浅入深,逐篇递进。

urllib是基于http的高层库,它有以下三个主要功能:

(1)request处理客户端的请求

(2)response处理服务端的响应

(3)parse会解析url

一、爬取网页内容

我们知道,网页上呈现的优美页面,本质都是一段段的HTML代码,加上JS 、CSS等,本人也是刚开始学python,这个文章也比较小白,资深老鸟请忽略~~。

本文所说的代码都是基于python3的,使用phython2的请注意

python 3.x中urllib库和urilib2库合并成了urllib库

其中urllib2.urlopen()变成了urllib.request.urlopen()

urllib2.Request()变成了urllib.request.Request()

那么获取网页有哪一些方法呢?这里列举了三种方法,具体查看代码。

import urllib.requestimport http.cookiejarurl = '直接通过url来获取网页数据print('第一种 :直接通过url来获取网页数据')response = urllib.request.urlopen(url)html = response.read()

将上面的代码copy之后,在pycharm新建一个python项目,如下图,新建一个python file ,命名为demo.py 黏贴上面的代码

 

GET方式:

上面我们使用的是post的形式的,至于GET方式区别就是在URL上,我们如果直接把参数写到网址上面,构建一个带参数的URL。

values={}

四、添加头部

从上面的代码我们可以知道,可以使用build_opener 获取到opener对象,来添加头部

cookie = http.cookiejar.CookieJar()

五、http 错误

import urllib.request req = urllib.request.Request(' ')

六、异常处理

except HTTPError as e:

except URLError as e:

from urllib.request import Request, urlopen

except URLError as e:

if hasattr(e, 'reason'):

elif hasattr(e, 'code'):

from urllib.request import Request, urlopen

七、HTTP 认证

import urllib.request

八、使用代理

import urllib.request proxy_support = urllib.request.ProxyHandler({'sock5': 'localhost:1080'})

九、超时

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值