Python 在BeautifulSoup中处理无限滚动UI

Python 在BeautifulSoup中处理无限滚动UI,python,beautifulsoup,Python,Beautifulsoup,我正在研究如何刮取Linkedin源代码(),但使用无限滚动似乎是不可能的。如何处理?我不想使用Selenium(希望稍后实现为web服务) BeautifulSoup只能帮助您编写HTML;你需要让LinkedIn返回更多的HTML。内容不在您拥有的HTML中,因此您必须获取它。浏览器可能正在运行LinkedIn的javascript,以注意到您正在滚动,因此需要获取更多内容并在页面中注入更多HTML-您需要以某种方式复制此内容获取 坏消息:BeautifulSoup不知道API或javasc

我正在研究如何刮取Linkedin源代码(),但使用无限滚动似乎是不可能的。如何处理?我不想使用Selenium(希望稍后实现为web服务)


BeautifulSoup只能帮助您编写HTML;你需要让LinkedIn返回更多的HTML。内容不在您拥有的HTML中,因此您必须获取它。浏览器可能正在运行LinkedIn的javascript,以注意到您正在滚动,因此需要获取更多内容并在页面中注入更多HTML-您需要以某种方式复制此内容获取

坏消息:BeautifulSoup不知道API或javascript。你需要另一个工具

好消息:这里有一些工具!您当然可以使用Selenium,这可能是解决这一问题的最简单方法,因为它可以很好地复制浏览器环境以达到这些目的

如果您坚决不使用Selenium,我建议您深入LinkedIn站点,看看您是否能够找出哪些javascript位负责获取更多数据,并复制它们发出的网络请求,然后自己解析这些数据

不过,对大多数人来说,硒将是正确的答案

import bs4
from bs4 import BeautifulSoup
import requests

def scraping(webpage):
    headers = {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36'}
    response= requests.get(str(webpage), headers=headers)
    soup = BeautifulSoup(response.text,"html.parser")
    print(soup)

scraping('https://www.linkedin.com/mynetwork/invite-connect/connections')