爬取csdn用户的用户简介
学习一下 BeautifulSoup方法
from bs4 import BeautifulSoup
html_content = """
<html>
<head><title>示例网页</title>
</head>
<body><h1 class="main-title">欢迎学习BeautifulSoup</h1><div id="content"><p class="intro">这是第一段文字</p><p>这是第二段文字,包含一个<a href="https://example.com">链接</a></p><ul class="list"><li>项目一</li><li>项目二</li><li>项目三</li></ul></div><div class="footer"><p>页脚信息 © 2023</p></div>
</body>
</html>
"""xml_contnet=BeautifulSoup(html_content,"lxml") #把 数据转为 xml的形式
xml_title=xml_contnet.title #可以根据上面内容的标头进行数据的提取
print(xml_title)
#输出文本内容
print(xml_title.text)
他其实就是根据Css选择器进行跟踪相应文本内容的所在地
request库需要去菜鸟教程中学习
现在先创建一个url的真人模拟发包
import requests
from bs4 import BeautifulSoup
url="https://blog.csdn.net/2301_81155391?ops_request_misc=%7B%22request%5Fid%22%3A%2267d363df7a1c85e6c3caac2be0291626%22%2C%22scm%22%3A%2220140713.130064515..%22%7D&request_id=67d363df7a1c85e6c3caac2be0291626&biz_id=206&utm_medium=distribute.pc_search_result.none-task-user-null-1-167928411-null-null.nonecase&utm_term=%E6%91%B8%E9%B1%BC%E4%B9%9F%E5%BE%88%E9%9A%BE&spm=1018.2226.3001.4351"heads={ "User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36 Edg/135.0.0.0"
}
#使用库进行发送请求
response=requests.get(url=url,headers=heads) #这个就是使用上面的url 和 head 头进行发包
查看 requests是否能使用
现在进行爬取内容的定位
右键
复制Css选择器 这个 BeautifulSoup 方法就是可以进行定位 Css选择器 内容的位置
#先使用 库把获取页面的形式转为lxml 然后再进行筛选需要的内容即可
soup=BeautifulSoup(response.text,"lxml") #把内容进行 lxml 解析result=soup.select("#userSkin > div.user-profile-head > div.user-profile-head-info > div.user-profile-head-info-b > p") #Css选择器的位置
# 即使 result 只有一个结果但是还是要使用[0] 因为.select 返回的是列表
a=result[0].get_text() #因为是处理的html内容 所以处理的结果都是列表的形式 get_text() 也是进行文本的转换但是 转换的对象仍然是列表的形式
print(a)
爬取多条数据
爬多个数据就涉及到储存的问题
这个就是个人简介的所有信息
最后的结果