Selenium加快爬取加载速度,控制图片加载,控制css加载,控制JavaScript动态加载

了解更多关注微信公众号“木下学Python”吧~

 

1.加快Selenium爬取速度

  • 控制css加载---

 抓取过程仅仅抓取页面内容,CSS样式文件是用来控制页面外观和元素房子位置的,对内容并没有影响,可以限制

            网页加载CSS,从而减少抓取时间,代码如下:

        from selenium import webdriver

        f = webdriver.FirefoxProfile()
        f.set_preference("permissions.default.stylesheet",2)

        driver = webdriver.Firefox(firefox_profile = f)
        driver.get('https://www.douban.com/')

 

  • 控制图片加载---

 1)Firefox 如果不需要抓取图片可以禁止图片加载从而提高效率,代码如下:

          from selenium import webdriver

          f = webdriver.FirefoxProfile()
          f.set_preference("permissions.default.image",2)

          driver = webdriver.Firefox(firefox_profile = f)
          driver.get('https://www.douban.com/')

2)Chrome 的限制图片和JAVAscript

          import requests
          from selenium import webdriver

          options = webdriver.ChromeOptions()
          prefs = {
              'profile.default_content_setting_values': {
                   'images': 2,
                'javascript': 2
                }
             }
          options.add_experimental_option('prefs', prefs)

          driver = webdriver.Chrome(chrome_options=options)
          driver.get('http://www.dianping.com/search/category/7/10/p1')
          driver.implicitly_wait(20)

 

  •    控制JavaScript运行,如需要内容不是通过JavaScript动态加载得到的,可禁止加载从而提高效率代码如下:
           from selenium import webdriver

           f = webdriver.FirefoxProfile()
           f.set_preference("javascript.enabled",False)

           driver = webdriver.Firefox(firefox_profile = f)
           driver.get('https://www.douban.com/')

 

 

 # 不加载图片,加快访问速度
options.add_experimental_option("prefs", {"profile.managed_default_content_settings.images": 2})

 

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值