python爬虫学习——urllib、urllib2库的使用


声明:本文转载自https://my.oschina.net/u/3754854/blog/1622968,转载目的在于传递更多信息,仅供学习交流之用。如有侵权行为,请联系我,我会及时删除。

1.urllib2库的使用示例

>>> import urllib2 >>> response=urllib2.urlopen('http://www.baidu.com')#获取网页信息 >>> print response.read()#打印出网页信息

首先我们调用的是urllib2库里面的urlopen方法,传入一个URL,这个网址是百度首页,协议是HTTP协议,当然你也可以把HTTP换做FTP,FILE,HTTPS 等等,只是代表了一种访问控制协议。

2.分析程序信息

(1)第一句程序是导入urllib2库

(2)第二句我们主要看一下urlopen这个函数

作用:打开一个网页信息

格式:

urlopen(url,data,timeout)

参数:三个参数,一个必传参数URL,两个参数(date,timeout)

  • 第一个参数url即为URL
  • 第二个参数data是访问URL时要传送的数据
  • 第三个timeout是设置超时时间

第二三个参数是可以不传送的,data默认为空None,timeout默为 socket._GLOBAL_DEFAULT_TIMEOUT

第一个参数URL是必须要传送的,在这个例子里面我们传送了百度的URL,执行urlopen方法之后,返回一个response对象,返回信息便保存在这里面。

(3)第三句是把urlopen获取到的网页信息,打印出来(response对象有一个read方法,可以返回获取到的网页内容。)

response.read()

response对象有一个read方法,可以返回获取到的网页内容

不加read打印出来的结果,直接打印出了该对象的描述,所以记得一定要加read方法

<addinfourl at 139728495260376 whose fp = <socket._fileobject object at 0x7f1513fb

3.构造一个request

import urllib2 request=urllib2.Request("http://www.baidu.com") response=urllib2.urlopen(request) print response.read()

推荐大家这样写,这个程序反应出爬虫的基本过程。

动态网页抓取信息

上面的程序演示了最基本的网页抓取,不过,现在大多数网站都是动态网页,需要你动态地传递参数给它,它做出对应的响应。所以,在访问时,我们需要传递数据给它。

数据传送分为POST和GET两种方式,最重要的区别是GET方式是直接以链接形式访问,链接中包含了所有的参数,当然如果包含了密码的话是一种不安全的选择,不过你可以直观地看到自己提交了什么内容。POST则不会在网址上显示所有的参数,不过如果你想直接查看提交了什么就不太方便了,大家可以酌情选择。

post方法:

1.首先构建一个url 2.传递动态信息给url 3.构建一个request 4.构建一个response #代码——登陆知乎客户端 import urllib2 value={"username":"1590110xxxx","password":"xx12341234"} date=urllib2.urlencode(value) url="https://www.zhihu.com/" request=urllib2.Request(url,date) response=urllib2.urlopen(request) print response.read()

get方法:

import urllib2 values={'username':'159xxxxxxxx','password':'xx12341234'} date=urllib2.urlencode(values) url='https://www.zhihu.com/' geturl=url+'?'+date request=urllib2.Request(url) response=urllib2.urlopen(request) print response.read()  

本文章参考崔庆才博客。

http://python.jobbole.com/81336/

本文发表于2018年02月23日 18:31
(c)注:本文转载自https://my.oschina.net/u/3754854/blog/1622968,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如有侵权行为,请联系我们,我们会及时删除.

阅读 1943 讨论 0 喜欢 1

抢先体验

扫码体验
趣味小程序
文字表情生成器

闪念胶囊

你要过得好哇,这样我才能恨你啊,你要是过得不好,我都不知道该恨你还是拥抱你啊。

直抵黄龙府,与诸君痛饮尔。

那时陪伴我的人啊,你们如今在何方。

不出意外的话,我们再也不会见了,祝你前程似锦。

这世界真好,吃野东西也要留出这条命来看看

快捷链接
网站地图
提交友链
Copyright © 2016 - 2021 Cion.
All Rights Reserved.
京ICP备2021004668号-1