时间:2021-05-22
所谓网页抓取,就是把URL地址中指定的网络资源从网络流中读取出来,保存到本地。在Python中有很多库可以用来抓取网页,我们先学习urllib2。
urllib2是Python2.x自带的模块(不需要下载,导入即可使用)
urllib2官网文档:https://docs.python.org/2/library/urllib2.html
urllib2源码
urllib2在python3.x中被改为urllib.request
urlopen
我们先来段代码:
#-*- coding:utf-8 -*-#01.urllib2_urlopen.py#导入urllib2库import urllib2#向指定的url发送请求,并返回服务器的类文件对象response = urllib2.urlopen("http://patible; MSIE 9.0; Windows NT 6.1; Trident/5.0;"}request =urllib2.Request(url, headers = header)#也可以通过调用Request.add_header()添加/修改一个特定的headerrequest.add_header("Connection","keep-alive")#也可以通过调用Request.get_header()来查看header信息request.get_header(header_name = "Connection")response = urllib2.urlopen(request)print(response.code) #可以查看响应状态码html = response.read()print(html) 随机添加/修改User-Agent#-*- coding:utf-8 -*-#05.urllib2_add_headers.pyimport urllib2import randomurl = "http://www.itcast.cn"ua_list = [ "Mozilla/5.0 (Windows NT 6.1; ) Apple.... ", "Mozilla/5.0 (X11; CrOS i686 2268.111.0)... ", "Mozilla/5.0 (Macintosh; U; PPC Mac OS X.... ", "Mozilla/5.0 (Macintosh; Intel Mac OS... "]user_agent = random.choice(ua_list)request = urllib2.Request(url)#也可以通过调用Request.add_header()添加/修改一个特定的headerrequest.add_header("User-Agent", user_agent)#第一个字母大写,后面的全部小写request.add_header("User-agent")response = urllib2.urlopen(req)html = response.read()print(html)注意
The urllib2 module has been split across several modules in Python 3 named urllib.request and urllib.error
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
提起python做网络爬虫就不得不说到强大的组件urllib2。在python中正是使用urllib2这个组件来抓取网页的。urllib2是Python的一个获
一、urllib和urllib2的关系在python2中,主要使用urllib和urllib2,而python3对urllib和urllib2进行了重构,拆分成
基本模块python爬虫,webspider。爬取网站获取网页数据,并进行分析提取。基本模块使用的是urllib,urllib2,re,等模块基本用法,例子:(
首先,我们来看一个Python抓取网页的库:urllib或urllib2。那么urllib与urllib2有什么区别呢?可以把urllib2当作urllib的扩
本文实例讲述了python使用urllib2提交httppost请求的方法。分享给大家供大家参考。具体实现方法如下:#!/usr/bin/python#codi