php抓取网页匹配url( 一下使用python爬虫的过程:目的:抓取网页源码的程序)
优采云 发布时间: 2022-02-27 05:15php抓取网页匹配url(
一下使用python爬虫的过程:目的:抓取网页源码的程序)
在网上看到一个使用python爬虫的小程序,自己学的。我们来看看这个程序的实现过程:
目的:抓取网页上的图像。
步骤:1、获取网页源代码
2、使用正则表达式匹配网页图片的URL
3、将图片保存到电脑
一、获取网页源代码的流程为:
import urllib #urllib是python网络访问的基础模块
#例如获取上一页的源码贴吧
page = urllib.urlopen("")
#.urlopen() 函数是打开一个URL,返回一个文件对象,然后进行类似文件对象的操作
html = page.read()
print html #此时输出会显示这个网页的源代码
二、使用正则表达式匹配图片网址
找出网页中图片的地址,进行正则表达式匹配。可以理解为网页中每张图片的地址都不一样,找出它们的规则,用正则表达式进行匹配。
右击页面上的图片,点击“查看元素”,可以找到图片对应的源码。找出所有这些图像源代码的规律,并编写与之匹配的正则表达式,对于这个例子,
正则表达式为 reg=r'src="([.\S]*\.jpg)" pic_ext="jpeg"
这里注意:正则表达式中的括号()用于提取匹配的字符串。如果不加括号,则提取的 URL 将收录 src=.....pic_ext="jpeg",这不是图像的源代码。
最后下载到本地会报错。
符号 (.) 是通配符,\S 是非空白字符,* 是匹配前一个字符 0 次或无限次。
imagereg = 桩(注册)
#pile() 将正则表达式(写成字符串)转换为模式对象
imgurls = re.findall(imagereg, html)
#将所有匹配的字符串作为列表返回。也就是说,imguris 是一个收录所有匹配字符串的列表,每个字符串就是每个图像的源代码。
三、保存图片
urllib.urlretrieve(url, "E:\mobile\sd card\%s.jpg" % "name")
urllib.urlretrieve()方法是将url定位的html文件下载到本地,第一个参数是要下载的url,第二个参数是要保存的地址和文件名
四、 最后看一下整个程序
导入 urllib
重新*敏*感*词*
def getHtml(url):
页面 = urllib.urlopen(url)
html = page.read()
返回 html
html = getHtml('')
reg = r'src="([.\S]*\.jpg)" pic_ext="jpeg"'
imagereg = 桩(注册)
imgurls = re.findall(imagereg, html)
x = 1
对于 imgurls 中的 imgurl:
urllib.urlretrieve(imgurl, 'E:\mobile\sd 卡\%s.jpg' % x)
x +=1
运行并查看结果
最后说一下正则表达式的学习方法:我个人觉得学习正则表达式还是挺难的。网上介绍的正则表达式的内容,乍一看很多,看的头疼,所以最好的学习方法就是每次都学。只需学习一个零件,尤其是在一个项目中,找到满足特定任务需求的零件,久而久之,您将精通正则表达式。