擅长:python、mysql、java
<p>既然你的思路似乎是对的,我并没有试图解决全部问题,而是试图给你一个有用的提示:<strong>做动态webscraping</strong>。你知道吗</p>
<p>“<strong>为什么是硒?靓汤还不够吗?</strong></p>
<p>用Python刮网通常只需要使用漂亮的汤就可以达到目的。BeautifulSoup是一个非常强大的库,它通过遍历DOM(文档对象模型)使web抓取更容易实现。但它只做静态刮削。静态刮取忽略JavaScript。它从服务器获取网页而不需要浏览器的帮助。你得到的正是你在“查看页面源”中看到的,然后你把它切块。如果您要查找的数据仅在“查看页面源”中可用,则无需再进一步。但是,如果您需要组件中存在的数据,而这些数据是通过单击JavaScript链接呈现的,那么动态刮取就可以解决问题。靓汤与硒的结合将起到动态刮削的作用。Selenium通过python自动化web浏览器交互。因此,JavaScript链接呈现的数据可以通过Selenium自动点击按钮获得,然后可以通过Beautiful Soup提取。”
<a href="https://medium.com/ymedialabs-innovation/web-scraping-using-beautiful-soup-and-selenium-for-dynamic-page-2f8ad15efe25" rel="nofollow noreferrer">https://medium.com/ymedialabs-innovation/web-scraping-using-beautiful-soup-and-selenium-for-dynamic-page-2f8ad15efe25</a></p>
<p>下面是我在DOM中的30首歌曲结尾看到的内容,它指向一个按钮:</p>
<pre><code> </li>
</ol>
<button class="link js-action-button" data-track-type="view-all-button">
View all on Spotify
</button>
</div>
</code></pre>