質問: 私は今、jsoupを使ってpixivのスクレイピングをしています。 実装しようとしている処理は、「イラストの検索結果画面からそれぞれのイラストのブックマーク数とイラストIDを取得する」というものですが、ブックマーク数だけ取得できませんでした。 ページのDOMツリーを見てみると、ブックマーク数は div#wrapper -> div.layout-body -> div._unit -> section.column-search-result -> ul._image-items.autopagerize_page_element -> li.image-item -> ul.count-list -> li -> a から取得できると考えたのですが、ul.count-listが取得できませんでした。 さらに、取得したli.image-item要素を見てみると、子要素にul.count-listが含まれていませんでした。 (使用したメソッドはorg.jsoup.nodes.Document.select()です) pixivの陰謀で取得できないのではないかとも思い始めています。 他のメソッドでも構いませんので、ブックマーク数を取得する方法があれば教えてください。
回答: まず、ログインが出来るサイト等のスクレイピングは一工夫必要です。 確認してもらったらわかるのですが、ログインしてない状態だとお気に入り数は表示されていません。(Chromeのシークレットウィンドウ等が便利です) ということは、きちんとログインした状態でスクレイピングする必要があるということです。 seleniumとかでログインされた状態でスクレイピングする必要があります。**陰謀ではありません(笑)** Javaでするなら以下のサイトが参考になりそうです。 Webオートメーションツールを使って、快適Webスクレイピング