Python スクレイピング

lxml.etree.ParserError: Document is empty

投稿日:

lxml.etree.ParserError: Document is empty が出た。このとき。

response=requests.get(”https://discussions.apple.com/discussion/create.jspa?sr=cmenu&containerType=14&containerID=2043”)
html=lxml.html.fromstring(response.content)

response.contentの中身を見たら、

b’\n\n\n\n\n<!DOCTYPE html>\n<html lang=”en”>\n\n\n \n\n\n\n \n\n\n<head>\n <meta charset=”utf-8″/>\n <link rel=”shortcut ico

Terms of Use\n </a>\n \n </div>\n </div>\n </section>\n </div>\n</footer>\n\n\n\n\n</html>\n’

このように、ちゃんとコンテンツは入っている。Document is empty(ドキュメントは空)ではない!

対策1 try~except でこのURLはスキップする。

対策2 response.contentに対してチェックをかけてスキップする。

どっちにしてもスキップだ。

-Python, スクレイピング

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

Python BeautifulSoupメモ

BeautifulSoupとは? Python pipでパッケージ管理されている。HTMLを容易に解析する機能提供する。 BeautifulSoup import宣言 from bs4 import …

no image

Ubuntu 16.04にPyCharm 2017.2.4をインストールする

PyCharm 2017.2.4をダウンロードする http://www.jetbrains.com/pycharm/download/download-thanks.html?platform=li …

no image

Pythonでスクレイピング

スクレイピングに使えるPythonライブラリ lxml…C言語ライブラリのlibxml2とlibxsltをPythonに組み込んだもの Beautiful…Soup シンプルで分かりやすいAPI py …

no image

URLの構造

http://hoge.sample.com/category/diet?q=drink#ojousama スキーム scheme httpやhttpsのようにプロトコルを表す オーソリティ auth …

no image

取得可能ドメイン・ドメイン取得可否のrequests.response.http_status_code

取得可能なドメインは2種類ある。 期限切れのドメイン(中古ドメイン) 全く新規のドメイン それぞれ、どのようなrequests.response.http_status_codeを返すのだろうか。下記 …