Python 可以使用请求在谷歌搜索的顶部打印滚动条中的所有元素吗?

Python 可以使用请求在谷歌搜索的顶部打印滚动条中的所有元素吗?,python,beautifulsoup,python-requests,google-search,Python,Beautifulsoup,Python Requests,Google Search,目标是在输入“纽约市社区”这样的术语时,在谷歌搜索的顶部打印滚动条中所有社区的文本 虽然使用请求作为 googleSearch = BeautifulSoup(requests.get('https://www.google.com/search?q=new+york+city+neighborhoods').content, "html.parser") …它没有返回我所期望的所有响应HTML(尽管Postman和Chrome响应显示了所有响应,但卷轴中只存在少数项)[1],这就是为什么尝试

目标是在输入“纽约市社区”这样的术语时,在谷歌搜索的顶部打印滚动条中所有社区的文本

虽然使用请求作为

googleSearch = BeautifulSoup(requests.get('https://www.google.com/search?q=new+york+city+neighborhoods').content, "html.parser")
…它没有返回我所期望的所有响应HTML(尽管Postman和Chrome响应显示了所有响应,但卷轴中只存在少数项)[1],这就是为什么尝试使用以下方法(但我有一个编码问题):

尝试检索响应(状态代码为200)时:

googleSearch.text
打印为:

找不到记录器“bs4.dammit”的处理程序
��������[�#ٕ ֑�RK=��v��我$�于��$���+Y�j2H&��五十> "��R*^$��gD包括这句话是告诉谷歌的服务器,他们可以使用:

我猜使用的压缩是
gzip
,尽管它也允许deflate、Brotli和Google共享字典压缩


您可以从标题中删除
accept encoding
行;或者导入gzip库并解压缩内容。

是的,我在Python 2.7.13中尝试过。您使用的是哪个操作系统?可能与在Pycharm的MacOS Sierra上运行Python 2.7.10有关。必须确认,您是否能够打印卷轴中的所有邻居(div[class=“kltat”文本)元素)我尝试了
googleSearch.find_all('div',class=“kitat”)
googleSearch.text.find('kitat')
但似乎没有任何kitat div。你确定在你的浏览器发出请求后,它们不是通过javascript添加的吗?我会尝试使用官方API,而不是使用Google。I应该是小写的L。我相信这非常精辟,解决了问题。
邻里=[dv.text for dv in googleSearch.find\u all('div',{'class':'kltat'})]
与原始编码/压缩发行作品的方法一起使用(包含卷轴的所有元素)
url = "https://www.google.com/search"

querystring = {"q":"New York City neighborhoods"}

headers = {
    'upgrade-insecure-requests': "1",
    'user-agent': "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36",
    'x-chrome-uma-enabled': "1",
    'x-client-data': "CIy2yQEIo7bJAQjEtskBCIuZygEI+pzKAQipncoB",
    'accept': "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8",
    'accept-encoding': "gzip, deflate, sdch, br",
    'avail-dictionary': "MC9c6ZtH",
    'accept-language': "en-US,en;q=0.8",
    'cookie': "HSID=AQGYffYcWgUgwoIGG; SSID=AsyTtOTpG3P0TWe_e; APISID=DZOqFSNpfZmThOP6/A15eY85jEZTDT47_j; SAPISID=4jqCaE3zLEcO8GG4/ANI8HEy3etCmKfit2; SID=4AMk07dZM5wKaFcBAD7PgfLgMV1imGkqULwEdE9VI3lwoNRghaVTGT4ZT0mCGgzehY3mFg.; OGPC=5062210-7:765334528-2:699960320-1:961419264-9:; NID=97=bZNps3TAJFPAppe9EQbLyUDwXDbEFN57lT_capK2DQMWMVo7nEnYlPV-_g5OkOCERrN6MS5PxJXuVUOhjHeZGhCkS4FubcEapEzyuSQVS9rJM99rPzwE98ra47eP-ay0YTR-TawjFJ-0hAqT_j7SI7vQGVIU6yj4awM0hEt4ZXTd4k0RnH6kJPb0qVCc8AnQQLg4VZ0Kc1s83vJo6k7jFm-GCEoi; HSID=AQGYffYcWgUgwoIGG; SSID=AsyTtOTpG3P0TWe_e; APISID=DZOqFSNpfZmThOP6/A15eY85jEZTDT47_j; SAPISID=4jqCaE3zLEcO8GG4/ANI8HEy3etCmKfit2; SID=4AMk07dZM5wKaFcBAD7PgfLgMV1imGkqULwEdE9VI3lwoNRghaVTGT4ZT0mCGgzehY3mFg.; OGPC=5062210-7:765334528-2:699960320-1:961419264-9:; NID=97=bZNps3TAJFPAppe9EQbLyUDwXDbEFN57lT_capK2DQMWMVo7nEnYlPV-_g5OkOCERrN6MS5PxJXuVUOhjHeZGhCkS4FubcEapEzyuSQVS9rJM99rPzwE98ra47eP-ay0YTR-TawjFJ-0hAqT_j7SI7vQGVIU6yj4awM0hEt4ZXTd4k0RnH6kJPb0qVCc8AnQQLg4VZ0Kc1s83vJo6k7jFm-GCEoi; DV=Qg7Cq8EJDPcYvgxe_quK9y6d3FXJtAI",
    'cache-control': "no-cache",
    'postman-token': "e6cec459-250e-1795-0e78-c450e5dfd56b"
    }
googleSearch = BeautifulSoup(requests.request("GET", url, headers=headers, params=querystring).content, "html.parser")
'accept-encoding': "gzip, deflate, sdch, br"