使用re爬取电影天堂

import requests
import re
import csv

domain='https://dytt89.com'
list_dapian=[]
# resp=requests.get(domain,verify=False) 讲课是老师使用了verify=False,应该是python版本不同,我的没有效果反而更好
resp=requests.get(domain)
resp.encoding='gb2312'
# print(resp.text)

f=open('href.csv',mode='w')

# 截取2021必看区,根据网页更新修改。有可能是2022、2023或者更久的

find_t=re.compile(r'2022必看热片.*?<ul>(?P<li>.*?)</ul>',re.S)
find_href=re.compile(r"<a href='(?P<href>.*?)'",re.S)
find_dp=re.compile(r'<h1>.*?《(?P<movie_name>.*?)》.*?</h1></div>'
r'.*?<a href="(?P<movie_url>.*?)"',re.S)#《》这个符号是中文的,否则匹配不到

result=find_t.finditer(resp.text)

for it in result:
ul=it.group("li")

# 获取2021必看链接
req_href=find_href.finditer(ul)
for itt in req_href:
dapian=(domain+itt.group('href'))
list_dapian.append(dapian)



# 通过链接找到每个下载地址
for dp_url in list_dapian:
req_dp_t = requests.get(dp_url)
req_dp_t.encoding = 'gb2312'
# print(req_dp_t.text)
req_dp_down = find_dp.finditer(req_dp_t.text)
for d in req_dp_down:
print(d.group("movie_name"))
print(d.group("movie_url"))







原文地址:https://www.cnblogs.com/xiaoyaoren/p/15796628.html