前言
本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理。
开发工具
- Python
- Pycharm
import requests
from bs4 import BeautifulSoup
相关模块可用pip命令安装
网页数据分析
如图所示,这些数据都是今天要获取的内容
一、打开开发者工具
得到登录信息
二、分析网页数据结构
选择开发者工具中的 Elements
选择箭头 选择网页的数据,会自动跳转到网页标签中,告诉你这个数据是在网页标签里面的哪个位置。
如上图所示,每我们只需要通过数据解析,提取所需要的数据即可。
import requests
from bs4 import BeautifulSoup
# 设置目标URL,假设我们要爬取的是“Python开发”相关的职位
url = 'https://www.zhipin.com/job_detail/?query=Python开发&city=100010000'
# 设置请求头,模拟浏览器行为
headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36',
'Cookie' : '__zp_stoken__=226afRjvDqcK%2FT8OJRjYLGBgTGUgrRTs1cUhGLz08R0Y7RzpJRjs%2FHDs2w77DhMO2HF1mw5QZQDM7R0dARklHPEUjOzvEvsK7Rzowwo3Cu8OsH1xpw4sZwrDDhAtvGXzDhwt3w4YxwpPCvC04w5PDhD87PUAhwrvCpsK7w5XDicKiw4VGwrxmwro7RUBEOT8WGWhbP0VPVVoNU2NUZGNPDk1WUjNAOz1AeMKbMToSDBkNFhkPEg4VCxUQDRZ8woJ%2FwoPCgAsVEBQPOEbCpsOEwpYSwr3CtMSAxJ3CmsK4xInCscSHwp7CoMK0xIHCr8OCw4PCl07Ct8Kywp%2FDiVJ5wrB4Tllgw4nCt19McsKxw4VOw4nCrk5VT8OAecK%2Fw4VpYBlkEQwYOxNYc8OK'}
response = requests.get(url, headers=headers)
response.encoding = 'utf-8' # 防止中文乱码
# 检查响应状态
if response.status_code == 200:
# 解析HTML内容
soup = BeautifulSoup(response.text, 'html.parser')
# 找到职位列表
job_list = soup.find_all('div', class_='job-primary')
for job in job_list:
# 提取职位名称
job_name = job.find('span', class_='job-name').text.strip()
# 提取公司名称
company_name = job.find('div', class_='company-text').a.text.strip()
# 提取职位薪资
salary = job.find('span', class_='red').text.strip()
# 提取工作地点和经验要求等信息
info = job.find('p').text.strip()
print(f"职位名称: {job_name}")
print(f"公司名称: {company_name}")
print(f"薪资: {salary}")
print(f"信息: {info}")
print("-" * 20)
else:
print("请求失败,状态码:", response.status_code)
实现效果
这就是文章以上所有内容了