Python自学记录--爬取豆瓣电影排名
#爬取豆瓣电影排名import re
import urllib.request
#确定数量
page=input("请输入您要查询的数量:")
#UA
headers={
"User-Agent":"Mozilla/5.0 \
(Windows NT 10.0; WOW64) AppleWebKit/537.36 \
(KHTML, like Gecko) Chrome/86.0.4240.198 \
Safari/537.36"
}
#排名链接
url="https://movie.douban.com/j/chart/top_list?type=11&interval_id=100%3A90&action=&start=0&limit="+page
#获取响应信息
req=urllib.request.Request(url,headers=headers)
#读取
data=urllib.request.urlopen(req).read().decode()
pat1=r'"rating":\["(.*?)","\d+"\]'
pat2=r'"title":"(.*?)"'
pattern1=re.compile(pat1)
pattern2=re.compile(pat2)
data1=pattern1.findall(data,re.I)
data2=pattern2.findall(data,re.I)
for i in range(len(data1)):
print("排名:",i+1,"电影名:",data2,"豆瓣评分:",data1)
很吃力,编程方面几乎完全是小白,也不懂英语,看教程,看书,看完就忘。就找题目去做,边做边搜@只有午安 本帖最后由 我今天是大佬 于 2021-9-27 09:08 编辑
用re不太好, bs4或者xpath不错
________________________________
进url看了一下返回的是json格式数据, 直接import json解析就好, 没必要用re 可以尝试用bs和xpath这些,只用正则的话,很多网站用起来很麻烦 看到这个好怀念 感谢!大佬 aonima 发表于 2021-9-26 17:38
看到这个好怀念
小白自学,期待老师指点 看看。。。。 suyaming 发表于 2021-9-26 21:51
可以尝试用bs和xpath这些,只用正则的话,很多网站用起来很麻烦
感谢回复,小白自学,谢谢指点 我今天是大佬 发表于 2021-9-27 09:05
用re不太好, bs4或者xpath不错
________________________________
感谢师兄指点,谢谢
页:
[1]
2