私は今、Webクローラーを作成していますが、私はimdbからユーザーレビューを取りたいと思っています。原点ページから10のレビューとレートを直接取得するのは簡単です。たとえば、http://www.imdb.com/title/tt1392170/reviews問題はすべてのレビューを取得することです、私はURLアドレスが変更されていない間に、より多くのレビューが表示されるように "より多くの負荷を"押す必要があります!だから私はPython3でどのようにすべてのレビューを得ることができるのか分かりません。私が今使っているのはリクエストです、bs4。今pythonを使用してimdbの "load more"を押して、より多くのレビューを得る方法
私のコードは:
from urllib.request import urlopen, urlretrieve
from bs4 import BeautifulSoup
url_link='http://www.imdb.com/title/tt0371746/reviews?ref_=tt_urv'
html=urlopen(url_link)
content_bs=BeautifulSoup(html)
for b in content_bs.find_all('div',class_='text'):
print(b)
for rate_score in content_bs.find_all('span',class_='rating-other-user-rating'):
print(rate_score)
以上の負荷」とリストの[BeautifulSoupのサブページのなど、チェックアウトボタンをクリックするなどのオートメーションタスクを実行するPython用 'selenium'と呼ばれるライブラリを、 – Stack
可能な複製を"pagination"(https://stackoverflow.com/questions/37799149/beautifulsoup-subpages-of-list-with-load-more-pagination) – thatrockbottomprogrammer
、またはこのリクエストをchromeネットワークタブから取得したページングに使用できます。http: //www.imdb.com/title/tt0371746/reviews/_ajax?ref_ = undefined&paginationKey = cyi4vu2uxjyffy4ynotlm45pxfmyxwf7xdnnirxpj2oplatil4zhp7rll6tnyzpbo7u5curqcymq2'。 次のページをロードするには、最初のページからページネーションキーを抽出し、上記のリクエストに渡す必要があります。 – Stack