Я написал программу, которая получает название должности, компанию, местоположение, зарплату и описание со страницы рабочих мест на Python во Флориде. У меня возникают проблемы с получением рабочих ссылок и с тем, как использовать ссылку на следующую страницу, чтобы перейти на следующую страницу результатов.
Я пробовал по-разному использовать теги с веб-страницы, учебные пособия и другие подобные решения, но ни один из них не работает с моим кодом. Код, который я написал внизу для ссылки на следующую страницу, не возвращает никаких ошибок, но не дает никакого вывода.
from bs4 import BeautifulSoup
import requests
url = 'https://www.indeed.com/jobs?q=python+developer&l=Florida&explvl=entry_level&sort=date'
while True:
response = requests.get(url)
data = response.text
soup = BeautifulSoup(data, 'html.parser')
jobs = soup.find_all(attrs={"data-tn-component": "organicJob"})
number = 0
for job in jobs:
number += 1
title = job.find("div",{"class":"title"})
print(number,". ", "\nTitle:", title.text.strip())
company = job.find("span",{"class":"company"})
print("Company:", company.text.strip())
location = job.find("span",{"class": "location"})
print("Location:", location.text.strip())
salary = job.find("div",{"class": "salarySnippet"})
if salary in job:
print("Salary:", salary.text.strip())
else:
print("Salary:", None)
summary= job.find("div",{"class":"summary"})
print("Summary:", summary.text.strip())
link = [a['href'] for a in job.find_all('a', href=True) if a.text]
print("link:",link)
#link = job.find("a", attrs = {"class":"jobtitleturnstileLink"}).get("href")
#print("Job link:", link)
print()
print()
url_tag = soup.find("span", {"class":"np"})
if url_tag.get("href"):
url = 'https://www.indeed.com/jobs?q=python+developer' + url_tag.get("href")
print("Next page:",url)
else:
break
Комментированные строки ссылок дали мне такую же выходную ссылку:
['/rc/clk?jk=441b435e5b088904&fccid=194a64c267cc7ab6&vjs=3', '/cmp/Foreground-Security', '/cmp/Foreground-Security/reviews', '#', '#', '/q-Foreground-Security-l-Melbourne,-FL-jobs.html', '/l-Melbourne,-FL-jobs.html', '/salaries/Test-Engineer-Salaries,-Melbourne-FL', '/cmp/Foreground-Security', '/forum/cmp/Foreground-Security.html', '/forum/loc/Melbourne-Florida.html']
Это то, что ссылка в настоящее время получает как ссылка:
/rc/clk?jk=441b435e5b088904&fccid=194a64c267cc7ab6&vjs=3