这是对招聘网站进行读取并写入Excel,包括职位,招聘名称, 薪资, 招聘地区(城市), 招聘要求, 公司名称 ,公司规模。
from bs4 import BeautifulSoup
import requests
from openpyxl import workbook # 写入Excel表所用
# from openpyxl import load_workbook
url = 'https://www.liepin.com/zhaopin/?inputFrom=www_index&workYearCode=0&key=大数据'
headers = {'user-agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36'}
def getData(src):
global ws
job_salary = []
job_name = []
job_city = []
job_requirement = []
job_company_name = []
job_company_type = []
resp = requests.get(url, headers=headers)
context = resp.text
# print(context)
soup = BeautifulSoup(context, 'html.parser')
div_findall = soup.find_all('div',class_='job-detail-box')
for item in div_findall:
job_salary1 = item.find('span',class_='job-salary')
job_name1 = item.find('div', class_='ellipsis-1')
job_city1 = item.find('span', class_='ellipsis-1')
job_requirement1 = item.find('span',class_='labels-tag')
job_company_name1 = item.find('span',class_='company-name ellipsis-1')
job_company_type1 = item.find('div',class_='company-tags-box ellipsis-1')
job_name.append(job_name1.text)
job_salary.append(job_salary1.text)
job_city.append(job_city1.text)
job_requirement.append(job_requirement1.text)
job_company_name.append(job_company_name1.text)
job_company_type.append(job_company_type1.text)
for i in range(40):
ws.append([job_name[i],job_salary[i],job_city[i],job_requirement[i],job_company_name[i],job_company_type[i]])
# list = (['职位招聘名称', '薪资', '招聘地区(城市)', '招聘要求', '公司名称', '公司规模'])
# job_tag = item.find('span',class_='job-tag') 这个tag有的有,有的信息没有,没有信息就报错不知怎样解决
# def tag():
# if 'None' in job_tag:
# print("None")
# else:
# print(job_tag.text)
# print(job_tag) 这个tag有的有有的信息没有,没有信息就报错不知怎样解决
# print(job_name.text, job_city.text,job_salary.text,job_requirement.text,job_company_name.text,job_company_type.text)
if __name__ == '__main__':
wb = workbook.Workbook() # 创建Excel对象
ws = wb.active # 获取当前正在操作的表对象
# ws = (['职位招聘名称', '薪资', '招聘地区(城市)', '招聘要求', '公司名称', '公司规模'])
# 表头添加不上,加上上面的这行execl表就清空了
src = 'https://www.liepin.com/zhaopin/?inputFrom=www_index&workYearCode=0&key=大数据'
getData(src)
wb.save('text01.xlsx') # 存入所有信息后,保存为filename.xlsx
借鉴了一些大佬的代码,纯手打改了两个小时
思路是对已有的列表依次读取并写入6组不一样的数据