如何用Python编写爬虫获取豆瓣电影评分信息?
- 内容介绍
- 文章标签
- 相关推荐
本文共计220个文字,预计阅读时间需要1分钟。
pythonimport requestsimport reimport csv
url=https://movie.douban.com/top250headers={ User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36 Edg/107.0.1418.62}resp=requests.get(url, headers=headers)
import requestsimport reimport csvurl = "movie.douban.com/top250"headers = { "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36 Edg/107.0.1418.62"}resp = requests.get(url, headers=headers)page_content = resp.textobj = re.compile(r'<li>.*?<div class="item">.*?<span class="title">(?P<name>.*?)' r'</span>.*?<p class="">.*?<br>(?P<year>.*?).*?<span ' r'class="rating_num" property="v:average">(?P<score>.*?)</span>.*?' r'<span>(?P<num>.*?)人评价</span>',re.S)result = obj.finditer(page_content)f=open("data.csv",mode="w")csvwriter = csv.writer(f)for it in result: #print(it.group("name")) # print(it.group("score")) # print(it.group("num")) # print(it.group("year").strip()) dic = it.groupdict() dic['year'] =dic['year'].strip() csvwriter.writerow(dic.values())f.close()print("over!")本文共计220个文字,预计阅读时间需要1分钟。
pythonimport requestsimport reimport csv
url=https://movie.douban.com/top250headers={ User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36 Edg/107.0.1418.62}resp=requests.get(url, headers=headers)
import requestsimport reimport csvurl = "movie.douban.com/top250"headers = { "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36 Edg/107.0.1418.62"}resp = requests.get(url, headers=headers)page_content = resp.textobj = re.compile(r'<li>.*?<div class="item">.*?<span class="title">(?P<name>.*?)' r'</span>.*?<p class="">.*?<br>(?P<year>.*?).*?<span ' r'class="rating_num" property="v:average">(?P<score>.*?)</span>.*?' r'<span>(?P<num>.*?)人评价</span>',re.S)result = obj.finditer(page_content)f=open("data.csv",mode="w")csvwriter = csv.writer(f)for it in result: #print(it.group("name")) # print(it.group("score")) # print(it.group("num")) # print(it.group("year").strip()) dic = it.groupdict() dic['year'] =dic['year'].strip() csvwriter.writerow(dic.values())f.close()print("over!")
