最近跟着detalF学习了爬虫知识,记录一下免得过两天忘记了
1. Requests 用来获取网页信息
- 使用 requests.get(‘目标网址’)方法就可以抓取html信息,真的是非常非常简单
url = "https://movie.douban.com
headers = {
'user-agent': 'Mozilla/5.0(Windows NT 10.0;Win64 x64)AppleWebkit/537.36(KHTML,like Gecko) chrome/58.0.3029.110 Safari/537.36'}"
r = requests.get(url=url, headers=headers)
print(r.text) # 打印获取的html信息
2. BeautifulSoup 用来解析网页信息,提取自己想要的信息
刚才使用Requests.get() 获取html信息,提取有用的信息就需要用到BeautifualSoup。
调用find() | findAll()方法获取自己想要的参数,然后存到变量就可以了。
# 使用BeautifulSoup解析html
soup = BeautifulSoup(r.text, "html.parser")
# 获取目标信息
movie_info['title'] = soup.find(property="v:itemreviewed").string # 电影名称
movie_info['director'] = soup.find(rel='v:directedBy').string # 导演
writer = soup.findAll(class_='attrs')
movie_info['writer'] = get_list(soup.findAll(class_='attrs')[1].findAll("a")) if len(writer) > 1 else "" # 编剧 如果小于1 返回空值
movie_info['actor'] = get_list(soup.findAll(rel='v:starring')) # 主演
movie_info['type'] = get_list(soup.findAll(property='v:genre'<