上一节中已经说过了理论基础,那么现在就来实践一个,要爬取一个静态网页的所有图片。
这里使用的网页下载器是python自带的urllib2,然后利用正则表达式匹配,输出结果。
以下为源码:
//引入小需要用到的模块
import urllib2
import re
def main():
//利用urllib2的urlopen方法,下载当前url的网页内容
req = urllib2.urlopen('http://www.imooc.com/course/list')
//将网页内容存储到buf变量中
buf = req.read()
//将buf中的所有内容与需要匹配的url进行比对。这里的正则表达式是根据静态网页的源码得出的,查看静态网页源码开启开发者模式,按F12即可。然后确定图片块,查看对应源码内容,找出规律,编写正则表达式。
listurl = re.findall(r'src=.+\.jpg',buf)
i = 0
//将结果循环写入文件
for url in listurl:
f = open(str(i)+'.jpg','w')
req = urllib2.urlopen(url[5:])
buf1 = req.read()
f.write(buf1)
i+=1
if __name__ == '__main__':
main()
至此一个静态网页的图片爬虫就完成了,下面来看下效果。
这是静态网页:
以下是爬取的结果:
本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。