python——爬虫入门(以爬取豆瓣电影为例)
·
爬取豆瓣top250网站的电影名,右键网站(可以是需要爬取的部分)——检测——网络——找到需要爬取的部分在哪

import requests
import bs4
from requests.packages import target
headers = {
"User-Agent" : "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Mobile Safari/537.36 Edg/140.0.0.0"
}
#使用headers伪装成浏览器
res = requests.get("https://movie.douban.com/top250",headers=headers)
if res.ok:
print(res.text)
else:
print("请求失败")
#检查是否成功爬取
a = res.text #保持响应结果的text属性
soup = bs4.BeautifulSoup(a, "html.parser") #使用python自带的html.parser解析器来分析HTML
targets = soup.find_all("div",class_="hd") #find_all函数找到带有“div”标签,class为hd的部分
for i in targets:
print(i.a.span.text) #找到里面的<a hred = "..">的标签下的<span class = "title">下的文本
将爬出的数据写入excel表中
import requests
import bs4
import openpyxl
from requests.packages import target
headers = {
"User-Agent" : "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Mobile Safari/537.36 Edg/140.0.0.0"
}
#使用headers伪装成浏览器
res = requests.get("https://movie.douban.com/top250",headers=headers)
if res.ok:
print(res.text)
else:
print("请求失败")
#检查是否成功爬取
a = res.text #保持响应结果的text属性
soup = bs4.BeautifulSoup(a, "html.parser") #使用python自带的html.parser解析器来分析HTML
targets = soup.find_all("div",class_="hd") #find_all函数找到带有“div”标签,class为hd的部分
wb = openpyxl.Workbook() #创建一个workbook对象
sheet = wb.active #创建后会产生表单,现在把他复制给一个变量
sheet.title = "豆瓣电影Top25"
# 添加表头
sheet["A1"] = "排名"
sheet["B1"] = "电影名称"
# 遍历提取的电影信息并写入Excel
for index, target in enumerate(targets, start=1): #利用enumerate来遍历数据,同时列出数据与数据下标(从第1位开始)
# 提取电影名称
movie_name = target.a.span.text
# 写入Excel,索引+1是因为表头占用了第一行
sheet[f"A{index+1}"] = index
sheet[f"B{index+1}"] = movie_name
# 保存Excel文件
file_name = "豆瓣电影Top25.xlsx"
wb.save(file_name)

更多推荐
所有评论(0)