python3爬虫初探之正则表达式

Posted 不秩稚童

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python3爬虫初探之正则表达式相关的知识,希望对你有一定的参考价值。

  前面已经写了如何获取网页源码,那么接下来就是该解析网页并提取需要的数据了。这里简单写一下正则表达的用法。

  首先,找个要抓取图片的网站,获取源码。

import requests
import re

# 获取网页源码
url = \'http://www.ivsky.com/tupian/xiaohuangren_t21343/\'
data = requests.get(url).text

  小黄人的图。。。接下来浏览器检查元素,发现图片源码格式,前面均为<img ,结尾均为 .jpg 而我们要提取的就是网址部分。

  正则表达式如下:

#正则表达式三部曲
#<img src="http://img.ivsky.com/img/tupian/t/201411/01/xiaohuangren-009.jpg" width="135" height="135" alt="卑鄙的我小黄人图片">
regex = r\'<img src="(.*?.jpg)"\'#匹配网址
pa = re.compile(regex)#转为pattern对象
ma = re.findall(pa, data)#findall 方法找到所有的符合pa的对象,添加到一个列表中并返回
print(ma)#图片网址列表
print(len(ma))#列表长度,即找到图片个数

#截取部分列表输出
#[\'http://img.ivsky.com/img/tupian/t/201411/01/xiaohuangren_tupian-007.jpg\', \'http://img.ivsky.com/img/tupian/t/201411/01/xiaohuangren-009.jpg\', \'http://img.ivsky.com/...
#25

 

以上是关于python3爬虫初探之正则表达式的主要内容,如果未能解决你的问题,请参考以下文章

python3爬虫之入门和正则表达式

爬虫初探正则表达式

python3爬虫初探之requests

python3爬虫初探之文件保存

爬虫初探之urllib.request

反爬虫2-python3.6 正则表达式抓取猫眼电影TOP100