Bagaimana untuk mencari teks kursus "New York City, USA" menggunakan BeautifulSoup
在 Python
?
Cuba menyalin video untuk berlatih, tetapi ia tidak lagi berfungsi.
Cuba mencari sesuatu dalam dokumentasi rasmi tetapi tidak berjaya. Atau adakah fungsi get_html_content saya tidak berfungsi dengan betul dan Google hanya menyekat saya, sekali gus mengembalikan list
/ None
kosong?
Ini kod semasa saya:
from django.shortcuts import render import requests def get_html_content(city): USER_AGENT = "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.157 Safari/537.36" LANGUAGE = "en-US,en;q=0.5" session = requests.Session() session.headers['User-Agent'] = USER_AGENT session.headers['Accept-Language'] = LANGUAGE session.headers['Content-Language'] = LANGUAGE city.replace(" ", "+") html_content = session.get(f"https://www.google.com/search?q=weather+in+{city}").text return html_content def home(request): result = None if 'city' in request.GET: city = request.GET.get('city') html_content = get_html_content(city) from bs4 import BeautifulSoup soup = BeautifulSoup(html_content, 'html.parser') soup.find_all('div', attrs={'class': 'wob_loc q8U8x'}) **OR** soup.find_all('div', attrs={'id': 'wob_loc'})
--> semua kembalikan senarai kosong (= .find
方法返回 None
)
Reka letak halaman Google mungkin telah berubah pada masa yang sama, jadi untuk mendapatkan data tentang cuaca anda perlu menukar kod anda. Contohnya: