我正在学习网络抓取,并试图在搜索特定术语时从Google的最佳搜索结果中获取链接。 到目前为止,这是我的代码:
import requests
search_term = str(input('Search for: '))
search_results = requests.get(f'https://www.google.com/search?q={search_term}')
当我这样打印 search_results 时:
print(search_results.text())
然后,我只得到了应该得到的HTML文件的一小部分。当我将HTML代码保存在 search_results 中并在chrome中运行时,很明显 request.get 函数仅获得Google搜索结果页面的顶部。 / p>
例如,如果我输入“ cats”作为 search_term ,保存得到的HTML并在chrome中运行,则仅得到顶部,如图所示:{{ 3}}
不胜感激。
答案 0 :(得分:0)
您必须使用selenium
例如
import time
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.keys import Keys
browser = webdriver.Firefox()
browser.get('https://www.google.com')
search = browser.find_element_by_name('q')
search.send_keys("cats")
search.send_keys(Keys.RETURN)
time.sleep(5)
browser.quit()