1 回答
TA贡献1802条经验 获得超5个赞
这是一个经典案例,如果您尝试使用像 BeautifulSoup 这样的爬虫直接抓取网站,您将找不到任何东西。
该网站的工作方式是,首先将初始代码块下载到您的浏览器,就像您添加的一样,big pencil
然后通过 Javascript,加载页面上的其余元素。
您需要先使用Selenium Webdriver加载页面,然后从浏览器中获取代码。在正常意义上,这相当于您打开浏览器的控制台,转到“元素”选项卡并查找您提到的类。
要查看差异,我建议您查看页面的源代码并与“元素”选项卡中的代码进行比较
在这里,您需要使用 BS4 获取加载到浏览器的数据
from selenium import webdriver
browser = webdriver.Chrome("path_to_chromedriver") # This is the Chromedriver which will open up a new instance of a browser for you. More info in the docs
browser.get(url) # Fetch the URL on the browser
soup = bs4.BeautifulSoup(browser.page_source, 'html.parser') # Now load it to BS4 and go on with extracting the elements and so on
这是了解 Selenium 的非常基本的代码,但是,在生产用例中,您可能需要使用像PhantomJS这样的无头浏览器
添加回答
举报