Я пытаюсь выполнить парсинг веб-сайтов с предложениями вакансий в Интернете для моего проекта Coursera.
Я постоянно получаю ошибку 403. После того, как я поискал ее значение в Интернете, я обнаружил, что это означает, что на веб-сайте защита от парсинга веб-сайтов.
Есть ли у кого-нибудь какие-либо меры противодействия этому?
PS: Я действительно пробовал парсинг веб-сайтов, и мы работаем удаленно с веб-сайтами с той же ошибкой после выполнения моего код.
Вот мой код:
import requests
from bs4 import BeautifulSoup
import pandas as pd
url = 'https://weworkremotely.com/remote-jobs'
# We Work Remotely website blocks traffic from non-browsers, so we add extra parameters
headers = {
'User-Agent': 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:128.0) Gecko/20100101 Firefox/128.0'
}
# Send a request to the website and get the HTML content
response = requests.get(url, headers=headers)
# Check if the request was successful
if response.status_code == 200:
soup = BeautifulSoup(response.content, 'html.parser')
# Creating empty lists to store the data
job_titles = []
companies = []
locations = []
job_links = []
job_sections = soup.find_all('section', class_='jobs')
for section in job_sections:
jobs = section.find_all('li', class_='feature') # Ensure this class matches the site's HTML
for job in jobs:
# Job title
title_tag = job.find('span', class_='title')
title = title_tag.text.strip() if title_tag else 'N/A'
job_titles.append(title)
# Company name
company_tag = job.find('span', class_='company')
company = company_tag.text.strip() if company_tag else 'N/A'
companies.append(company)
# Location
location_tag = job.find('span', class_='region company')
location = location_tag.text.strip() if location_tag else 'Remote'
locations.append(location)
# Job link
job_link_tag = job.find('a', href=True)
job_link = 'https://weworkremotely.com' + job_link_tag['href'] if job_link_tag else 'N/A'
job_links.append(job_link)
# Create a DataFrame using the extracted data
job_data = pd.DataFrame({
'Job Title': job_titles,
'Company': companies,
'Location': locations,
'Job Link': job_links
})
# Save the data to a CSV file
job_data.to_csv('we_work_remotely_jobs.csv', index=False)
print("Job listings have been successfully saved to we_work_remotely_jobs.csv")
else:
print(f"Failed to retrieve the webpage. Status code: {response.status_code}")
Подробнее здесь: https://stackoverflow.com/questions/789 ... ing-python
Ошибка 403 при попытке очистить сайты вакансий с помощью Python ⇐ Python
Программы на Python
-
Anonymous
1734269785
Anonymous
Я пытаюсь выполнить парсинг веб-сайтов с предложениями вакансий в Интернете для моего проекта Coursera.
Я постоянно получаю ошибку 403. После того, как я поискал ее значение в Интернете, я обнаружил, что это означает, что на веб-сайте защита от парсинга веб-сайтов.
Есть ли у кого-нибудь какие-либо меры противодействия этому?
PS: Я действительно пробовал парсинг веб-сайтов, и мы работаем удаленно с веб-сайтами с той же ошибкой после выполнения моего код.
Вот мой код:
import requests
from bs4 import BeautifulSoup
import pandas as pd
url = 'https://weworkremotely.com/remote-jobs'
# We Work Remotely website blocks traffic from non-browsers, so we add extra parameters
headers = {
'User-Agent': 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:128.0) Gecko/20100101 Firefox/128.0'
}
# Send a request to the website and get the HTML content
response = requests.get(url, headers=headers)
# Check if the request was successful
if response.status_code == 200:
soup = BeautifulSoup(response.content, 'html.parser')
# Creating empty lists to store the data
job_titles = []
companies = []
locations = []
job_links = []
job_sections = soup.find_all('section', class_='jobs')
for section in job_sections:
jobs = section.find_all('li', class_='feature') # Ensure this class matches the site's HTML
for job in jobs:
# Job title
title_tag = job.find('span', class_='title')
title = title_tag.text.strip() if title_tag else 'N/A'
job_titles.append(title)
# Company name
company_tag = job.find('span', class_='company')
company = company_tag.text.strip() if company_tag else 'N/A'
companies.append(company)
# Location
location_tag = job.find('span', class_='region company')
location = location_tag.text.strip() if location_tag else 'Remote'
locations.append(location)
# Job link
job_link_tag = job.find('a', href=True)
job_link = 'https://weworkremotely.com' + job_link_tag['href'] if job_link_tag else 'N/A'
job_links.append(job_link)
# Create a DataFrame using the extracted data
job_data = pd.DataFrame({
'Job Title': job_titles,
'Company': companies,
'Location': locations,
'Job Link': job_links
})
# Save the data to a CSV file
job_data.to_csv('we_work_remotely_jobs.csv', index=False)
print("Job listings have been successfully saved to we_work_remotely_jobs.csv")
else:
print(f"Failed to retrieve the webpage. Status code: {response.status_code}")
Подробнее здесь: [url]https://stackoverflow.com/questions/78923223/403-error-when-trying-to-web-scrape-online-job-sites-using-python[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия