来自 bs4 的代码导入请求 import BeautifulSoup
LIMIT = 50
URL = f"https://au.indeed.com/jobs?q=Python&limit={LIMIT}&radius=50"
def extract_indeed_pages():
result = requests.get(URL)
soup = BeautifulSoup(result.text, "html.parser")
pagination = soup.find("div", {"class":"pagination"})
links = pagination.find_all("a")
pages = []
for link in links[:-1]:
pages.append(int(link.string))
max_page = pages[-1]
return max_page
def extract_indeed_jobs(last_page):
jobs = []
# for page in range(last_page):
result = requests.get(f"{URL}&start={0*LIMIT}")
soup = BeautifulSoup(result.text, "html.parser")
results = soup.find_all("div", {"class": "jobsearch-SerpJobCard"})
for result in results:
title = result.find("div", {"class": "title"}).find("a")["title"]
company = result.find("span", {"class": "company"})
if company is None:
print(company.find("a").string)
else:
print(company.string)
return jobs
结果
DisplayrNoneAkuna CapitalNone
Akuna CapitalNoneAkuna Capital
TechSkills Accelerator
NoneNoneWestbury PartnersNone
Inflexi Technologies Pvt. Ltd.Akuna CapitalNone
Optiver
Traceback (most recent call last): File "main.py", line 5, in <module> indeed_jobs = extract_indeed_jobs(last_indeed_page) File "/home/runner/python-course/indeed.py", line 30
, in extract_indeed_jobs
print(company.find("a").string)
AttributeError: 'NoneType' object has no attribute 'find’
我不想看到任何东西,只想看到公司名称。我试图解决这个问题,但是我无法解决这个问题。我很感激你的建议