Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?
一般的なスクレイピング手法とその問題点 スクレイピングというと、HTTPクライアントライブラリを用いてHTML取得し、HTML/XMLパーサーで解析するというのが一般的だと思います。 この手法の場合、以下の場合にうまく処理できません。 ターゲットのページがJavaScriptにより動的にDOMを操作する場合 HTML/XMLパーサーが取得したHTMLを正しく解釈できない場合(正しくないHTMLでもブラウザはなんとか処理するが、パーサーライブラリは正確なHTMLでないと処理できないことがある) 特に問題になるのは前者でしょう。最近のWebサイトではJavaScriptでDOMを操作することは珍しくなくなってきています。SPAであればなおさら難しく、もはやこういった手法によるスクレイピングは不可能でしょう。 ヘッドレスブラウザによるスクレイピング 動的なDOMやパーサーがうまく解釈できないとい
PHP5でのスクレイピングについて調査してみた。 正規表現でやってもいいのだけど。 PHP5でやるのだからSimpleXMLでやってみたい。 となると、いかに未整形HTMLを整形済にしてSimpleXMLとするかが 課題となる。これについて調べてみた。 ↓これが答え。なるものを見つけました。 HTMLParser(PEARのXML_HTMLSax3使用)orTidyで整形してるそうです。 HTMLをXML化してDOMやXPathで操作するWebスクレイピング用PHPクラス : Under Construction, Baby: # SimpleXML+HTMLParser or Tidy+HTTP_Request+Cache_Lite http://www.rcdtokyo.com/ucb/contents/i000851.php これで調査終了。というのも寂しいので。 もう少しお手軽にで
APIが提供されていないサービスから欲しい情報だけを取得するには、HTMLなどから自前でスクレイピングを行うしかありません。PHPでのスクレイピングに役立つライブラリなどをまとめてみました。 PerlやRubyには色々と便利そうなものが見つかるのですが、PHPにはなかなかこれといったものがないですね。 Webスクレイピングライブラリ HTMLScraping HTMLをXML化してDOMやXPathで操作できるクラス。主にHTTP_Request+HTMLParser(XML_HTMLSax3を含む)/Tidy+Cache_Liteという構成で、スクレイピングに必要なものが一通り揃っている。ライセンスはLGPL他。 WebScraper シンプルな汎用スクレイピングクラス。HTTP_Client+HTMLParser(XML_HTMLSax3を含む)という構成で、XPathで要素を抽出でき
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く