解析流程 - 正则解析

数据解析

  • 请求顺序:
    • 指定url
    • 发起请求
    • 获取响应数据
    • 数据的解析
    • 持久化存储

正则解析

- 使用正则匹配:
    - re.M:多行匹配
      re.S:单行匹配(*)
import requests
import re
import os
from urllib import request
headers = {
    'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.121 Safari/537.36'
}
#抓取某某百科中的图片数据
url = 'https://www.*****.com/pic/'
page_text = requests.get(url=url,headers=headers).text
if not os.path.exists('qiutu'):
    os.mkdir('qiutu')
#数据解析:图片的url
img_url_list = re.findall('<div class="thumb">.*?<img src="(.*?)" alt.*?</div>',page_text,re.S)
for img_url in img_url_list:
    img_url = 'https:'+img_url
    img_name = img_url.split('/')[-1]
    img_path = 'qiutu/'+img_name
    request.urlretrieve(img_url,img_path)
    print(img_path,'下载成功')

猜你喜欢

转载自www.cnblogs.com/zhang-zi-yi/p/10749319.html