记录一个爬虫小作业1
#老师又布置了一个爬虫作业,虽然很简单,但是值得记录一下,爬取豆瓣电影Top250页面电影标题,对爬取到的标题记录在txt中,再通过WordCloud做出图片。代码如下。
import requests
from bs4 import BeautifulSoup
from wordcloud import WordCloud
url = 'https://movie.douban.com/top250' # 爬取目标网址
# 请求头
headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64)'
' AppleWebKit/537.36 (KHTML, like Gecko)'
' Chrome/80.0.3987.132 Safari/537.36', 'Host': 'movie.douban.com'}
r = requests.get(url, headers=headers) # 请求网址
soup = BeautifulSoup(r.text, "lxml") # 选择lxml作为解析器
b = soup.findAll("div", {'class': 'hd'}) # 找内容
for title in b: # 遍历内容
title = title.span.text
file = open('record.txt', "a", encoding='utf-8') # 创建record文本文档
file.write(title+'\n') # 换行记录爬取内容
file.close()
# 生成词云图片
f = open('record.txt', 'r', encoding='utf-8')
# 设置图片字体、长宽高等
pic = WordCloud(font_path="C:/Windows/Fonts/SIMYOU.TTF",
width=1000,
height=700,
background_color="white").generate(f.read())
pic.to_file('record.jpg') # 输出到图片
值得注意的是C盘字体文件夹下字体文件一定得有哦。
运行截图如下。