我正在使用python来自动化selenium / firefox。我的代码将加载大约85,000个不同的网页。我知道这将花费很长时间,但如果可以做到,我不介意它比目前更快。现在一个网页加载可以在5到10秒的范围内。我知道它可能是网站和/或我的互联网连接,但我想知道是否有一种方法可以加载重要的东西,以便它会更快。我之前在浏览器中看过这个...没有加载图像和javascript等我想知道这是否可以在硒中使用firefox。 感谢。
答案 0 :(得分:5)
你可以禁用images / css / javascript,但是可以使用全部或全部的开关,你可能需要其中一些来使你的应用程序正常工作。
FirefoxProfile profile = new FirefoxProfile();
profile.setPreference("permissions.default.stylesheet", 2);
profile.setPreference("permissions.default.image", 2);
profile.setPreference("javascript.enabled", false);
FirefoxDriver browser = new FirefoxDriver(profile);
以上将允许您禁用这些。
我推荐的一件事可能更容易在无头浏览器中运行selenium,如htmlunit或phantomjs,这些也应该更快地运行你的测试。
答案 1 :(得分:0)
如果您不需要任何内容,如图片,javascript等,那么您应该使用像BeautifulSoup这样的内容
pip install bs4
from bs4 import BeautifulSoup
import urllib2
soup = BeautifulSoup( urllib2.urlopen( "http://google.com" ).read(), "html5lib" )
soup.select( "body > div" )