Pythonスクレイピング比較

Pythonで始めるウェブスクレイピング実践入門

speakerdeck.com

tag css xpath text javascript
beautifulsoup ×
scrapy × ×
pyppeteer × ×
requests-html

beautifulsoup

https://www.crummy.com/software/BeautifulSoup/bs4/doc/

scrapy

https://docs.scrapy.org/en/latest/index.html

  • scrapy-splashとの組合せでjavascriptスクレイピング可能
  • ブログ・ニュースサイトの定型なもののデータ収集に便利
  • クローリング可能
  • エクスポートが豊富

pyppeteer

https://miyakogi.github.io/pyppeteer/

  • puppeteer(Node.js)のPython
  • 自動化ができる
  • tableの中身の取り方がわからない

requests-html

https://html.python-requests.org/

  • beautifulsoup+pyppeteer(javascript
  • タグが省略されていると苦手
  • "ValueError: Unicode strings with encoding declaration are not supported. Please use bytes input or XML fragments without declaration."とエラーがでてできないことがある