admin管理员组

文章数量:1574537

还没有写完...待续...看不懂的可以等我视频出来~

视频链接:http://www.bilibili/video/av11253964/

参考大佬的博客:博客是Python社区的一位大佬写的,博客园死活不让我放链接,说违禁...不知道怎么回事,呵呵了....我偏要放,就算是图片,是吧大佬...

HTTP的两种方法(一种是GET一种是POST):http://www.w3school/tags/html_ref_httpmethods.asp

最简单的一个爬虫代码:

#!/usr/bin/python

#coding:utf-8importurllib2

response= urllib2.urlopen('http://www.baidu/')

html=response.read()print html

看看上面的代码,陌生吗?反正很少是吧?我来教你,很简单的

现在我们来加一个Request,来看看代码怎么样了

#!/usr/bin/python#coding:utf-8

importurllib2

req= urllib2.Request('http://wwwblogs/yunquan/')

response=urllib2.urlopen(req)

the_page=response.read()print the_page

现在加了request之后,结果是一模一样的,那为什么还要加request这个东西呢?是因为request这东西可以传递两个参数

1.发送Data数据表单

2.作为HTTP的headers来额外的发送数据或本身的信息

那我们就来看看这两种情况

一、发送Data数据表单

#!/usr/bin/python#coding:utf-8

importurllibimporturllib2

url= 'http://www.baidu'values= {'name' : 'Michael Foord','location' : 'pythontab','language' : 'Python'}

data=urllib.urlencode(values)

req=urllib2.Request(url, data)

response=urllib2.urlopen(req)

the_page= response.read()

这里面的values也不知道是个啥格式,反正就是有值,然后我们把values给编码了....用的urlencode...因为浏览器只认识编码那种非人类的东西,所以我们得投其所好...

然后,当当当当!我们下面的request是不是多了一个参数?对,就是被编码后的values...再向下就是套路了,一个open,一个read....全是套路....

然后柘林还有一个HTTP发送请求的两种格式,参考:http://www.w3school/tags/html_ref_httpmethods.asp

importurllib2importurllib

data={}

data['name'] = 'Somebody Here'data['location'] = 'pythontab'data['language'] = 'Python'url_values=urllib.urlencode(data)

url= 'http://www.baidu'full_url= url + '?' +url_values

data= urllib2.open(full_url)

二、作为HTTP的headers来额外的发送数据或本身的信息

importurllibimporturllib2

url= 'http://www.baidu'user_agent= 'Mozilla/4.0 (compatible; MSIE 5.5; Windows NT)'values= {'name' : 'Michael Foord','location' : 'shuyuqnuan','language' : 'Python'}

headers= { 'User-Agent': user_agent }

data=urllib.urlencode(values)

req=urllib2.Request(url, data, headers)

response=urllib2.urlopen(req)

the_page= response.read()

安装beautifulsoup

#Mac下安装

sudo easy_install beautifulsoup4

#Ubantu下安装

pip install beautifulsoup4

我们来写一个爬图片的爬虫(文件夹自己建,link那里看情况写)

#!/usr/bin/python#coding:utf-8

importurllibimporturllib2importosfrom bs4 importBeautifulSoupdefgetAllImageLink():

html= urllib2.urlopen('http://ac.qq/').read()

soup= BeautifulSoup(html,'html.parser')

liResult= soup.findAll('img')

count=0;for image inliResult:

count+= 1link= ‘看情况’+image.get('src') #这里看情况,src和url一样了就不写,不一样的话就加上前缀,直到link等于url为止

imageName=count

filesavepath= '/Users/net/Desktop/testpython/%s.jpg' %imageNameprintfilesavepath

urllib.urlretrieve(link,filesavepath)printfilesavepathif __name__ == '__main__':

getAllImageLink()

本文标签: 爬虫入门Python