0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

[Python] Selenium+Adblock

Posted at

はじめに

Seleniumでスクレイピングしてるとき、広告があるせいで読み込みに時間がかかってしまう問題がある。
広告さえ無ければ1,2秒で読み込みが終わるため、Adblockを導入したい。
Seleniumには拡張機能を読み込む機能はあるが、色々ややこしいので触りにくい。
そこで、SeleniumAdblockというパッケージを紹介する。

SeleniumAdblock

まず公式Githubの指示通りにインストールする。

pip install git+https://github.com/sandrocods/SeleniumAdblock.git

その後、ChromeDriverに渡すオプションを以下のように設定して実行すると、広告をブロックしてスクレイピングできる。

from selenium import webdriver
import SeleniumAdblock

options = SeleniumAdblock.SeleniumAdblock()._startAdBlock()
options.add_argument('--headless')
options.add_argment('--no-sandbox')
options.add_argment('--remote-debugging-pipe')

driver = webdriver.Chrome(options=options)
driver.get("https://example.com/")

実際に試してみると、ブロック無しでnetkeiba.comからレース情報を読み込むと数十秒かかっていたのが、SeleniumAdblockを導入することで数秒で終わるようになった。
効果絶大。

まとめ

Seleniumでスクレイピングを行っていて広告に悩まされている人はSeleniumAdblockを導入してはどうだろうか。
ほぼ全ての広告をブロックできるため、スクレイピング効率が大きく向上するはずだ。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?