获取其他信息

打开 pageCode.txt 文件 (也可以直接在原网页 F12 调试获取),查看需要获取数据的标签信息。

比如我现在要拿图片

写出图片的正则表达式: reg = r’src=“(.+?.jpg)”’ 

解释下吧——匹配以 src=“开头然后接一个或多个任意字符 (非贪婪),以.jpg” 结尾的字符串。比如图中红框内 src 后 双引号里的链接就是一个匹配的字符串。

接着我们要做的就是从 get_html 方法返回的辣么长一串字符串中 拿到 满足正则表达式的 字符串。

用到 python 中的 re 库中的 re.findall(str) 它返回一个满足匹配的字符串组成的列表
import urllib.request

import chardet

import re

 

page = urllib.request.urlopen(‘http://www.meituba.com/tag/juesemeinv.html’) # 打开网页

htmlCode = page.read() # 获取网页源代码

 

#print(chardet.detect(htmlCode)) # 查看编码方式

data = htmlCode.decode(‘utf-8’)

#print(data) # 打印网页源代码

 

#pageFile = open(‘pageCode.txt’,‘wb’)# 以写的方式打开 pageCode.txt

#pageFile.write(htmlCode)# 写入

#pageFile.close()# 开了记得关

 

reg = r’src=“(.+?.jpg)”’# 正则表达式

reg_img = re.compile(reg)# 编译一下,运行更快

imglist = reg_img.findall(data)# 进行匹配

for img in imglist:

    print(img)
获取其他信息