Реализовать многопоточный веб-скрапер.
Многопоточный веб-скраперЗадание: Реализовать многопоточный веб-скрапер для асинхронной загрузки данных с веб-страниц.
import requests
from bs4 import BeautifulSoup
import threading
def fetch_url(url):
try:
response = requests.get(url)
soup = BeautifulSoup(response.content, 'html.parser')
titles = soup.find_all('h1')
print(f"URL: {url}, Titles: {[title.text for title in titles]}")
except Exception as e:
print(f"Error fetching {url}: {str(e)}")
urls = ["http://example.com", "https://example.org", "https://example.net"]
threads = []
for url in urls:
thread = threading.Thread(target=fetch_url, args=(url,))
thread.start()
threads.append(thread)
for thread in threads:
thread.join()
Результат выполнения кодаДанные с каждого URL были извлечены в многопоточном режиме, вывод зависит от доступности и структуры каждого сайта. Этот код демонстрирует базовый пример многопоточного скрапинга с использованием библиотек | |
|
| |
| Просмотров: 162 | |
| Всего комментариев: 0 | |