使硒不会等到pag满负荷

2024-09-29 21:50:00 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试使用selenium来处理类似这样的页面chromedriverhttp://shironet.mako.co.il/artist?type=lyrics&lang=1&prfid=202&wrkid=2473

问题是Selenium总是等到页面完成加载(例如youtube播放器)。 我只对html源代码感兴趣,所以我不想等这么久。 我怎样才能让我的程序不等待呢?我正在使用python。 (我使用selenium因为urllib不适用于此网站)


Tags: httplangartistmakotypeselenium页面chromedriver
2条回答

如果您只需要源代码,实际上并不需要Selenium所做的任何事情,因此Selenium只会妨碍您。用selenium刮取URL,然后执行一个简单的httpget(例如,使用curl或wget,或编程语言中的任何内置函数,如urllib2或Python中的请求库)

如果您还想对HTML进行一些复杂的解析,可以看看beauthoulsoup或LXML。在

几乎没有可能的解决方案:

1)由于您没有阐明urllib didnt work for this website的含义,您可以尝试使用python-requests库来代替:

使用pip install requestscmd/Terminal

url = "http://shironet.mako.co.il/artist?type=lyrics&lang=1&prfid=202&wrkid=2473"
page_source = requests.get(url).content

2)尝试使用Firefox Preferences禁用媒体文件自动播放:

^{pr2}$

3)更粗鲁的方法是在页面上禁用Javascript(我不确定您是否真的需要这样做以达到所述目的)

from selenium.webdriver.firefox.firefox_profile import FirefoxProfile

profile.set_preference("javascript.enabled", False);
driver = webdriver.Firefox(profile)

但是要小心,因为它会从页面源删除一些必需的媒体文件

相关问题 更多 >

    热门问题