一篇文章入门python爬虫(需要html,css基础)
一篇文章入门python爬虫(需要html,css基础)
一篇文章入门python爬虫(需要html,css基础)代码演示 创建项目
首先安装requests包
pip install -i / requests
测试代码
代码语言:javascript代码运行次数:0运行复制# 1. 导入模块
import requests
# 2. 发送请求,获取响应
respe = re
一篇文章入门python爬虫(需要html,css基础)
代码演示
- 创建项目
- 首先安装requests包
pip install -i / requests
- 测试代码
# 1. 导入模块
import requests
# 2. 发送请求,获取响应
respe = requests.get("/") # 这是一个用于测试的网络链接
# . 打印响应体
print(respe)
# 打印响应码
print(respe.status_code)
print(decode())
运行结果
- 爬虫练习 只要是响应码是可以的,响应可以通过,那么就响应成功,然后我们打印返回结果,
# 1. 导入模块
import requests
# 2. 发送请求,获取响应
respe = requests.get("/") # 这是一个用于测试的网络链接
if :
print()
else:
print("请求失败")
运行结果
爬取豆瓣top250数据案例
案例演示网址
- 测试代码
# 1. 导入模块
import requests
# 2. 发送请求,获取响应
respe = requests.get(";) # 这是一个用于测试的网络链接
print(respe.status_code)
运行结果 这个运行结果是418,意思是愚人节,表示网页发现了,访问这个网页的是程序,不是人类。
- 定义请求头
在网页部分点击F12,点击网络
刷新网页,可以看见很多发送的请求
点击其中的任意一个请求
到user-agent
把这个请求头复制到代码中。
完整代码
代码语言:javascript代码运行次数:0运行复制# 1. 导入模块
import requests
headers = {
"user-agent": "Mozilla/5.0 (Windows T 10.0; Win64; x64) AppleWebKit/57.6 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/57.6 Edg/110.0.1587.69"
}
# 2. 发送请求,获取响应
respe = requests.get(";, headers = headers) # 这是一个用于测试的网络链接
print(respe.status_code)
运行结果
- BeautifulSoup库来解析网页源码
- 首先安s4包
pip install -i / bs4
如果上面命令安装失败,那么使用这个命令
代码语言:javascript代码运行次数:0运行复制 -m pip install bs4 -i --trusted-host pypi.douban
选择需要获取的标签的情况,比如我现在想要获取这个评分,然后可以看出来,它是spanB标签下的rating_num
属性
完整代码
代码语言:javascript代码运行次数:0运行复制import requests
from bs4 import BeautifulSoup
headers = {
"user-agent": "Mozilla/5.0 (Windows T 10.0; Win64; x64) AppleWebKit/57.6 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/57.6 Edg/110.0.1587.69"
}
# 2. 发送请求,获取响应
respe = requests.get(";, headers = headers) # 这是一个用于测试的网络链接
content =
# 获取文本的树状结构
soup = BeautifulSoup(content,"html.parser")
# 获取评分集合
all_rating_nums = soup.findAll("span", attrs={"class", "rating_num"})
for rating_num in all_rating_nums:
print(rating_num)
运行结果,获取到了一页的评分情况
通过切片获取具体评分
代码语言:javascript代码运行次数:0运行复制import requests
from bs4 import BeautifulSoup
headers = {
"user-agent": "Mozilla/5.0 (Windows T 10.0; Win64; x64) AppleWebKit/57.6 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/57.6 Edg/110.0.1587.69"
}
# 2. 发送请求,获取响应
respe = requests.get(";, headers = headers) # 这是一个用于测试的网络链接
content =
# 获取文本的树状结构
soup = BeautifulSoup(content,"html.parser")
# 获取评分集合
all_rating_nums = soup.findAll("span", attrs={"class", "rating_num"})
for rating_num in all_rating_nums:
print(rating_num.string)
运行结果
现在我想要获取每一部的与评分相结合的情况。 获取作品姓名代码
首先是观察作品名字的盒子信息,可以知道的是hd这个盒子下的,a标签中。
关键操作代码如下
代码语言:javascript代码运行次数:0运行复制all_titles = soup.findAll("div", attrs={"class", "hd"})
for title in all_titles:
all_links = title.findAll("span", attrs={"class", "title"})
for link in all_links:
print(link.string.split("/")[0])
运行结果
- 分页操纵获取全部 观察这个分页情况,还有页面情况,url情况,一共有10页,每页25个
我们换页之后的样子
直接用这个链接也可以的
然后这个就知道怎么写了,通过一个循环不断的设置,然后爬取十次就可以了,然后完整代码如下。
代码语言:javascript代码运行次数:0运行复制import requests
from bs4 import BeautifulSoup
headers = {
"user-agent": "Mozilla/5.0 (Windows T 10.0; Win64; x64) AppleWebKit/57.6 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/57.6 Edg/110.0.1587.69"
}
for i in range(0, 251, 25):
url = "=" + str(i)
# 2. 发送请求,获取响应
respe = requests.get(url, headers = headers) # 这是一个用于测试的网络链接
content =
# 获取文本的树状结构
soup = BeautifulSoup(content,"html.parser")
# 获取评分集合
# all_rating_nums = soup.findAll("span", attrs={"class", "rating_num"})
# for rating_num in all_rating_nums:
# print(rating_num.string)
all_titles = soup.findAll("div", attrs={"class", "hd"})
for title in all_titles:
all_links = title.findAll("span", attrs={"class", "title"})
for link in all_links:
print(link.string.split("/")[0])
运行完毕,爬取成功
#感谢您对电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格的认可,转载请说明来源于"电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格
上传时间: 2025-07-19 11:25:34
推荐阅读
留言与评论(共有 20 条评论) |
本站网友 尽在不言中宣芋 | 17分钟前 发表 |
比如我现在想要获取这个评分 | |
本站网友 短期拆借 | 22分钟前 发表 |
代码语言:javascript代码运行次数:0运行复制import requests from bs4 import BeautifulSoup headers = { "user-agent" | |
本站网友 北京慈铭体检 | 6分钟前 发表 |
一共有10页 | |
本站网友 动植物园 | 20分钟前 发表 |
获取响应 respe = requests.get("; | |
本站网友 黄色小书 | 24分钟前 发表 |
原始发表:202-05-12 | |
本站网友 谢利 | 28分钟前 发表 |
每页25个 我们换页之后的样子 直接用这个链接也可以的 然后这个就知道怎么写了 | |
本站网友 郑万铁路 | 25分钟前 发表 |
"html.parser") # 获取评分集合 all_rating_nums = soup.findAll("span" | |
本站网友 念慈庵 | 22分钟前 发表 |
attrs={"class" | |
本站网友 从明天起做一个幸福的人 | 7分钟前 发表 |
"hd"}) for title in all_titles | |
本站网友 万达华府二手房 | 21分钟前 发表 |
获取响应 respe = requests.get("/") # 这是一个用于测试的网络链接 # . 打印响应体 print(respe) # 打印响应码 print(respe.status_code) print(decode())运行结果 爬虫练习 只要是响应码是可以的 | |
本站网友 激光手术治疗近视眼 | 27分钟前 发表 |
分享自作者个人站点/博客 | |
本站网友 干脆面君 | 25分钟前 发表 |
all_links = title.findAll("span" | |
本站网友 阻力位 | 9分钟前 发表 |
表示网页发现了 | |
本站网友 天津合租房 | 30分钟前 发表 |
attrs={"class" | |
本站网友 安利护肤品 | 12分钟前 发表 |
print(link.string.split("/")[0])运行结果 分页操纵获取全部 观察这个分页情况 | |
本站网友 冻疮 | 27分钟前 发表 |
like Gecko) Chrome/110.0.0.0 Safari/57.6 Edg/110.0.1587.69" } for i in range(0 | |
本站网友 减小肚子 | 8分钟前 发表 |
比如我现在想要获取这个评分 | |
本站网友 三七花的功效与作用 | 28分钟前 发表 |
获取作品姓名代码首先是观察作品名字的盒子信息 | |
本站网友 中粮御岭湾 | 1分钟前 发表 |
"rating_num"}) for rating_num in all_rating_nums |