手记

python写网络爬虫

#!/usr/bin/evn python

-- coding: cp936 --

import re                  #导入正则表达式模块
import urllib              #导入urllib模块,读取页面与下载页面需要用到
def getHtml(url):           #定义getHtml()函数,用来获取页面源代码
page = urllib.urlopen(url)    #urlopen()根据url来获取页面源代码
html = page.read()           #从获取的对象中读取内容
return html
def getImage(html):  #定义getImage()函数,用来获取图片地址并下载
reg = r'src="(.*?.jpg)" width'   #定义匹配图片地址的url的正则表达式
imgre = re.compile(reg)   #对正则表达式进行编译,运行效率更高
imagelist = imgre.findall(html)  #使用findall()查找html中匹配正则表达式的图片url
x = 0
for imageurl in imagelist:
urllib.urlretrieve(imageurl,'picture_%s.jpg' % x)  #urlretrieve()下载文件
x +=1
uri = raw_input("请输入网址: ")
r = r'^http://'
if re.match(r,uri):
html2 = getHtml(uri)
else:
html2 = getHtml("http://" + uri)
getImage(html2)
运行脚本test.py

0人推荐
随时随地看视频
慕课网APP