Python 为什么不可能刮取一些站点?

Python 为什么不可能刮取一些站点?,python,web-scraping,beautifulsoup,Python,Web Scraping,Beautifulsoup,我目前正在学习如何使用Python/BeautifulSoup来抓取网站,我想知道为什么有些页面可以抓取,而有些页面不能 例如: -主要 可以刮取内容表 -主要内容 桌子不能刮 一些网页是否具有某种防止刮取的安全功能?为了测试特定网页是否可以刮取,我要做的第一件事是在scrapy shell上运行它,然后我将查看返回的响应查看(响应),以便可以刮取该响应中返回的任何内容 你说不能刮是什么意思?解释问题所在。页面的某些部分可能是通过JS创建的,因此如果JS没有运行,那么您试图删除的内容还不存在

我目前正在学习如何使用Python/BeautifulSoup来抓取网站,我想知道为什么有些页面可以抓取,而有些页面不能

例如:

  • -主要 可以刮取内容表
  • -主要内容 桌子不能刮

一些网页是否具有某种防止刮取的安全功能?

为了测试特定网页是否可以刮取,我要做的第一件事是在
scrapy shell
上运行它,然后我将查看返回的响应
查看(响应)
,以便可以刮取该响应中返回的任何内容

你说不能刮是什么意思?解释问题所在。页面的某些部分可能是通过JS创建的,因此如果JS没有运行,那么您试图删除的内容还不存在。“某些页面是否具有某种防止删除的安全功能?”是的。您应该研究Selenium,@Carcigenicate的评论是一个很好的解释任何网站都可以被删除。我可能会更难、更复杂或其他什么,但任何东西都可以被废弃(最后一个资源是自动执行浏览器操作,就像最终用户一样,它总是有效的,但它是les高效的)。第一种可能更通用,但也更需要资源,因为它完全模拟用户交互。第二个是无头刮板,具有JS的渲染功能。正如前面的评论所回答的那样,一些内容是JS驱动的,除非呈现/创建,否则无法进行刮取,这需要模拟用户交互。