以51job网站为例,代码如下:
import requests
from bs4 import BeautifulSoup
import pandas as pd
from pandas import DataFrame
url = "https://search.51job.com/list/080000,000000,0000,32,9,99,Java%25E5%25BC%2580%25E5%258F%2591,2,1.html"
res = requests.get(url)
res.encoding = "gbk"
print(res)
#创建beautiful soup对象
soup = BeautifulSoup(res.text)
#获取职位名
position_tag = soup.find_all('p',class_= 't1')
position = []
for i in range(len(position_tag)):
position.append(position_tag[i].a['title'])
print(position)
#获取公司名
company_tag = soup.find_all('span',class_='t2')
company = []
for i in range(len(company_tag)-1):
company.append(company_tag[1:][i].a['title'])
print(company)
#获取工作地点
place_tag = soup.find_all('span',class_='t3')
place = []
for i in range(len(place_tag)-1):
place.append(place_tag[1:][i].get_text())
print(place)
jobInfo = DataFrame([position,company,place]).T
jobInfo.columns = ['职位','公司','地址']
print(jobInfo)