【问题标题】:Getting sub URLs from a website [closed]从网站获取子 URL [关闭]
【发布时间】:2018-09-12 05:15:20
【问题描述】:

我想知道是否可以列出来自网站的 URL。这些 URL 是托管 zip 文件的 URL,如果您正确提供它们,文件将被下载。如果没有,您将被定向到 404 页面。

例如,如果主站点是https://myexample.net/,我对https://myexample.net/wp-content/uploads/2018/04/[do not have a pattern].zip 下的文件感兴趣。我尝试访问https://myexample.net/wp-content/uploads/2018/04/,但得到了404 error

此外,我检查了https://myexample.net/sitemap_index.xml,但没有找到我感兴趣的那些网址。所以问题是如何guess那些网址...感谢任何建议!

【问题讨论】:

  • https://myexample.net/wp-content/uploads/2018/04/ 可能会显示 zip 文件的列表,其中的 HTML 可能会被抓取。你能发布你的实际链接吗?这将使编写有效的解决方案变得更加容易。
  • @Ajax1234,感谢您的建议。我试图访问https://myexample.net/wp-content/uploads/2018/04/,但得到一个`404错误...

标签: python web-scraping scrapy web-crawler


【解决方案1】:

您是否尝试过使用sitemap generator

还有一个 Python 库:https://pypi.python.org/pypi/sitemap-generator/0.5.2

如果您不想编写代码,也可以使用浏览器插件来执行此操作,例如 Chrome 的“uSelect iDownload”工具。

【讨论】:

  • 感谢您提供这些资源!会检查出来。
  • @TH339 请将此标记为已解决。
  • @W4t3randWind,对不起,我认为我的问题没有解决......
【解决方案2】:

我想知道是否可以列出来自网站的 URL?

现在,如果您谈论的是特定网站或任何通用网站。

多年来,我已经使用 Scrapy 进行了大量的抓取。下面是我的经验

  1. 许多网站根本不使用站点地图
  2. 使用站点地图的网站有一个很旧的站点地图,很久以前就更新了
  3. 最新生成的站点地图只有有限的网址,而不是所有的网址

总而言之,站点地图可以很好地生成种子 URL 列表,但它们由网站管理员控制,它们可能会或可能会更新站点地图。所以如果你真的想要一个url列表,你需要使用爬取。如果您不想使用相同的代码,那么您可以查看以下线程中讨论的几种方法

Spider a Website and Return URLs Only

如果你想去编码,我建议你看看 Scrapy

Scrapy crawl all sitemap links

Using Scrapy to parse sitemaps

【讨论】:

  • 感谢您的回答。关于真实网址,有什么方法可以私下分享给你吗?
  • 你可以给我留言 LI linkedin.com/in/tarunlalwani
猜你喜欢
  • 1970-01-01
  • 2010-10-25
  • 2014-08-19
  • 2013-03-10
  • 1970-01-01
  • 1970-01-01
  • 2018-06-15
  • 1970-01-01
相关资源
最近更新 更多