2017-10-05 5 views
0

を使用してGEOデータセットからの検索結果のURLリンクを取得します。 <div class="pagination">から、それは言う:私は、検索結果のページから各記事のすべてのリンクを取得したいページネーション

<a name="EntrezSystem2.PEntrez.Gds.Gds_ResultsPanel.Entrez_Pager.Page" title="Next page of results" class="active page_link next" href="#" sid="3" page="2" accesskey="k" id="EntrezSystem2.PEntrez.Gds.Gds_ResultsPanel.Entrez_Pager.Page">Next &gt;</a> 

は、したがって、私は、その内容を取得するためにBeautifulSoupを使用するために、次のページのURLを取得するために、Pythonのurllibは使用:

param2=urllib.urlencode({'sid':3,'page':2,'accesskey':'k','id':'EntrezSystem2.PEntrez.Gds.Gds_ResultsPanel.Entrez_Pager.Page'}) 

f2=urllib.urlopen('https://www.ncbi.nlm.nih.gov/gds/?term=lung+cancer',param2) 

soup2 = BeautifulSoup(f2.read(), 'html.parser') 

さて、問題はさらにI場合、ありますページ番号を1から10に変更すると、常にページ1の内容が表示されます。誰かが間違ったことを教えていただけますか?

答えて

0

次のページを取得するために、(POSTリクエストを行うことによって)大量のデータを送信する必要があります。任意のブラウザでデベロッパーツールを使用して、送信が必要なデータを確認します。

enter image description here

+0

は申し訳ありませんが、私はかなり理解していない(全てのデータが示されていない)私が正しいURLを推測するために、いくつかの組み合わせを試してみて意味ですか? – paladin

+0

私はあなたのデータを取得するための "魔法の" URLを構築する必要はありませんが、あなたは 'param2'で送信する膨大な量のデータを探索しなければならないようです。私の意見では、セレンなどのツールを使うのはずっと簡単です。 –

+0

ありがとう、私は彼らと少し遊んでみるよ。 – paladin

関連する問題