从站点获取 URL 列表 [关闭]

     2023-02-15     18

关键词:

【中文标题】从站点获取 URL 列表 [关闭]【英文标题】:Get a list of URLs from a site [closed] 【发布时间】:2010-10-25 20:27:18 【问题描述】:

我正在为客户部署一个替代网站,但他们不希望所有旧页面都以 404 结尾。保留旧的 URL 结构是不可能的,因为它很可怕。

所以我正在编写一个 404 处理程序,它应该查找正在请求的旧页面并永久重定向到新页面。问题是,我需要所有旧页面 URL 的列表。

我可以手动执行此操作,但如果有任何应用程序可以为我提供相对 URL 列表(例如:/page/path,而不是 http:/.../page/path),我会很感兴趣给定主页。像蜘蛛一样,但它不关心内容,只是寻找更深的页面。

【问题讨论】:

superuser.com/questions/329736/… 【参考方案1】:

我并不想回答我自己的问题,但我只是想运行一个站点地图生成器。我发现的第一个http://www.xml-sitemaps.com 有一个很好的文本输出。非常适合我的需求。

【讨论】:

但是有 5000 个链接的限制!..:( 我正在寻找任何免费的 php 站点地图生成器脚本。 当前限制为 500 — 越来越小…… It errored out for me: ::::::: An error occurred 访问指定的 URL 时出错:159.121.ssss 请确保指定正确的网站 URL 并重新提交您的请求. 仅供参考:如果您使用前端路由,您将无法从此方法获取这些路由。 仅供参考:如果网站使用身份验证和/或授权,您也不会获得所有路由。【参考方案2】:

wget -r -l0 www.oldsite.com

那么我相信只有find www.oldsite.com 会显示所有网址。

或者,只需在每个 404 请求上提供自定义的未找到页面! IE。如果有人使用了错误的链接,他会得到一个页面,告诉他没有找到该页面,并对网站的内容做出一些提示。

【讨论】:

值得注意的是,由于这会返回 文件 列表,而不是 URL,这仅适用于静态 HTML 文件集合的网站。如果站点有 URL 查询参数、服务器端重写 URL 或任何类型的include/require/等。组装页面,这不会真正起作用。 我可能对 wget 有误解。我以为“wget”是用来下载网站内容的? @Doomsy 是的,但是当您下载了所有内容后,您肯定知道该内容的所有 URL,并且不下载就无法找到 URL。 考虑默认深度。 gnu.org/software/wget/manual/html_node/… @alamar 是的,有无限递归的“-r -l inf”,但我建议人们查看文档——这么多很酷的选项! “-m”选项将镜像,我将尝试“-R.jpg,.jpeg,.gif,.png”,我认为它会跳过图像。【参考方案3】:

这里是站点地图生成器列表(显然您可以从中获取站点的 URL 列表):http://code.google.com/p/sitemap-generators/wiki/SitemapGenerators

网站地图生成器

以下是生成或维护文件的工具的链接 XML Sitemaps 格式,在 sitemaps.org 上定义的开放标准和 由 Ask、Google、Microsoft Live 等搜索引擎支持 搜索和雅虎!站点地图文件通常包含一组 网站上的 URL 以及这些 URL 的一些元数据。这 以下工具通常会生成“网络类型”的 XML 站点地图和 URL 列表 文件(有些可能还支持其他格式)。

请注意:Google 尚未测试或验证这些功能或 本网站上列出的第三方软件的安全性。请 将有关该软件的任何问题直接联系该软件的作者。 我们希望您喜欢这些工具!

服务器端程序

Enarion phpSitemapsNG (PHP) Google 站点地图生成器(Linux/Windows,32/64 位,开源) Outil en PHP(法语、PHP) Perl 站点地图生成器 (Perl) Python 站点地图生成器 (Python) 简单站点地图 (PHP) 站点地图 XML 动态站点地图生成器 (PHP) $ OS/2 的站点地图生成器(REXX 脚本) XML 站点地图生成器 (PHP) $

CMS 和其他插件:

ASP.NET - Sitemaps.Net DotClear(西班牙语) 点清除 (2) Drupal 电子商务模板 (PHP) $ 电子商务模板(PHP 或 ASP)$ 生活类型 MediaWiki 站点地图生成器 mnoGoSearch 操作系统商务 php网站 克隆 RapidWeaver 文本模式 vBulletin 维卡维基 (PHP) WordPress

可下载工具

GSiteCrawler (Windows) GWebCrawler 和站点地图创建器 (Windows) G-Mapper (Windows) Inspyder Sitemap Creator (Windows) $ IntelliMapper (Windows) $ Microsys A1 站点地图生成器 (Windows) $ Rage Google Sitemap Automator $ (OS-X) Screaming Frog SEO 蜘蛛和站点地图生成器 (Windows/Mac) $ 站点地图专业版 (Windows) $ 站点地图编写器 (Windows) $ DevIntelligence 的站点地图生成器 (Windows) Sorrowmans 站点地图工具 (Windows) SiteMapper (Windows) $ Vigos Gsitemap (Windows) Visual SEO Studio (Windows) WebDesignPros 站点地图生成器(Java Webstart 应用程序) Weblight (Windows/Mac) $ WonderWebWare 站点地图生成器 (Windows)

在线生成器/服务

AuditMyPc.com 站点地图生成器 AutoMapIt 自动站点地图 $ Enarion phpSitemapsNG 免费站点地图生成器 Neuroticweb.com 站点地图生成器 ROR 站点地图生成器 ScriptSocket 站点地图生成器 SeoUtility 站点地图生成器(意大利语) 站点地图文档 Sitemapspal 网站地图提交 Smart-IT-Consulting Google Sitemaps XML 验证器 XML 站点地图生成器 XML 站点地图生成器

带有集成站点地图生成器的 CMS

混凝土5

Google 新闻站点地图生成器 以下插件允许 发布商更新 Google 新闻站点地图文件,这是 我们在帮助中心中描述的 sitemaps.org 协议。此外 对于站点地图文件的正常属性,Google 新闻站点地图允许 发布者描述他们发布的内容类型,以及 指定单个文章的访问级​​别。更多信息 可以在我们的帮助中心和帮助论坛中找到有关 Google 新闻的信息。

WordPress 谷歌新闻插件

代码片段/库

ASP 脚本 Emacs Lisp 脚本 Java 库 Perl 脚本 PHP 类 PHP 生成器脚本

如果您认为应该添加或删除工具以实现合法 原因,请在站长帮助论坛留言。

【讨论】:

有没有人提供所有网址的打印屏幕? 这没有帮助...【参考方案4】:

我找到的最好的是http://www.auditmypc.com/xml-sitemap.asp,它使用Java,对页面没有限制,甚至可以将结果导出为原始URL列表。

它还使用会话,因此如果您使用的是 CMS,请确保在运行爬网之前退出。

【讨论】:

听起来不错,但坏了。【参考方案5】:

因此,在理想情况下,您应该为网站中的所有页面制定规范。您还将拥有一个测试基础架构,可以访问您的所有页面以对其进行测试。

您可能不在一个理想的世界中。为什么不这样做...?

    在井之间创建映射 已知的旧 URL 和新 URL。 当您看到旧网址时重定向。 我可能会考虑提出一个 “此页面已移动,它是新网址 是 XXX,您将被重定向 很快”。

    如果您没有映射,请提供 “抱歉 - 此页面已移动。这是 主页链接”消息和 如果你愿意,可以重定向它们。

    记录所有重定向 - 尤其是 没有映射的。随着时间的推移,添加 页面的映射是 很重要。

【讨论】:

【参考方案6】:

来自 linux 机器的 wget 也可能是一个不错的选择,因为有切换到蜘蛛并更改它的输出。

编辑:wget 在 Windows 上也可用:http://gnuwin32.sourceforge.net/packages/wget.htm

【讨论】:

【参考方案7】:

编写一个蜘蛛,它从磁盘读取每个 html 并输出“a”元素的每个“href”属性(可以用解析器完成)。请记住哪些链接属于某个页面(这是 MultiMap 数据结构的常见任务)。在此之后,您可以生成一个映射文件,作为 404 处理程序的输入。

【讨论】:

【参考方案8】:

我会研究任意数量的在线站点地图生成工具。就个人而言,我过去曾使用过 this one(基于 Java),但如果您在 Google 上搜索“站点地图生成器”,我相信您会找到很多不同的选项。

【讨论】:

powershell此sharepointpowershell从web应用程序中的所有站点获取使用特定内容类型的列表的url。(代码片段)

查看详情

如何在 C# 中从外部站点的 url 读取 PDF 文件 [关闭]

】如何在C#中从外部站点的url读取PDF文件[关闭]【英文标题】:HowtoreadaPDFfilefromaurlofexternalsiteinC#[closed]【发布时间】:2017-12-0606:38:27【问题描述】:我希望能够在我的asp.net应用程序中下载通过路由url(外部站点)访问的pdf。有什... 查看详情

从站点获取最“重”图像的列表

】从站点获取最“重”图像的列表【英文标题】:Obtainalistofmost"heavy"imagesfromasite【发布时间】:2018-05-2310:37:40【问题描述】:在ChromeDevTools中,有没有一种方法可以从网站获取最重载图片的列表?我们正在优化网站,因此... 查看详情

PHP 从多个 URL 获取站点标题

】PHP从多个URL获取站点标题【英文标题】:PHPgetsitetitlefrommultipleURLs【发布时间】:2018-08-1612:45:28【问题描述】:我有一堆链接。我需要从中提取标题。所以,我想让textarea粘贴链接和“获取标题”之类的按钮来提取标题。我做了... 查看详情

使用 Python 从站点获取实时日期(例如天气预报)[关闭]

】使用Python从站点获取实时日期(例如天气预报)[关闭]【英文标题】:GetRealTimeDateFromaSite(ex.WeatherPrediction)WithPython[closed]【发布时间】:2020-12-0107:34:50【问题描述】:例如,我们有一个值每20毫秒更改一次的站点天气预报网站。... 查看详情

从控制台从站点获取页面

Addthisto.irbrc.Allowsthefollowinginconsole:>gethtml('/login')=>HTMLofwhateverpageisgeneratedby/loginclassObjectdefgethtml(options={})url=app.url_for(options)app.get(url)putsapp.html_document.root.to_sendend 查看详情

从 YouTube 搜索查询中返回 URL 作为列表 [关闭]

】从YouTube搜索查询中返回URL作为列表[关闭]【英文标题】:ReturningtheURL\'sasalistfromaYouTubesearchquery[closed]【发布时间】:2015-05-1803:09:32【问题描述】:如何创建一个包含来自普通YouTube文本搜索的视频URL的列表?【问题讨论】:你也... 查看详情

如何从另一个网站通过 Id 获取元素 [关闭]

...:2017-11-0605:57:28【问题描述】:我想通过div的ID从另一个站点获取内容。假设,我有一个网站,我想从这个URL获取div内的所有内容,ID为“mainbar”-https://***.com/questions你能告诉我,如何用原生javascript或jque 查看详情

无法从下拉列表中获取值[关闭]

】无法从下拉列表中获取值[关闭]【英文标题】:CantgetthevaluefromDropdownlist[closed]【发布时间】:2021-03-2500:24:37【问题描述】:我将数据从json填充到下拉列表。$(function()$(\'#productList\').append($(\'<option/>\').attr("value",key).text(data[key... 查看详情

从模型列表中获取模型[关闭]

】从模型列表中获取模型[关闭]【英文标题】:getmodelfromListofamodel[closed]【发布时间】:2013-08-0614:19:52【问题描述】:有没有一种方法可以在不使用列表的foreach的情况下从模型列表中获取特定项目?就像你返回一个List&lt;model&a... 查看详情

在python中从字符串列表转换为列表列表[关闭]

】在python中从字符串列表转换为列表列表[关闭]【英文标题】:Convertingfromlistofstringstolistoflistinpython[closed]【发布时间】:2018-12-1421:35:45【问题描述】:我有一个PySparkRow列表:data_list_array=[Row(url=\'[a,b,c]\'),Row(url=\'[d,b,c]\')]my_list=[(i.... 查看详情

从 Sharepoint 列表中获取所有项目,包括使用 CSOM 的查找值

...包括查找字段的ID和值。查找列表与查询列表位于相同的站点/url。目前我收到“属性或字段尚未初始化”错误。如何正确地将查找字段加载 查看详情

如何从 facebook 中的 url 获取所有评论? [关闭]

】如何从facebook中的url获取所有评论?[关闭]【英文标题】:howcanIgetallcommentsfromaurlinfacebook?[closed]【发布时间】:2012-03-1806:32:26【问题描述】:我正在尝试获取已添加到facebook的URL的所有cmets。这可能吗?【问题讨论】:您说的“U... 查看详情

从 URL 获取片段(哈希“#”后的值)[关闭]

】从URL获取片段(哈希“#”后的值)[关闭]【英文标题】:Getfragment(valueafterhash\'#\')fromaURL[closed]【发布时间】:2011-01-2000:34:59【问题描述】:如何使用PHP在我的URL中选择“#”符号后的片段?我想要的结果是“photo45”。这是一个... 查看详情

从列表中获取通用数据[关闭]

】从列表中获取通用数据[关闭]【英文标题】:GettheCommondatafromtheList[closed]【发布时间】:2021-01-3014:36:47【问题描述】:我在C#中有以下列表。我需要生成以下数据。在一行中,他们针对特定部门、个人资料和角色共有的所有用户... 查看详情

如何从 Mailchimp 列表 ID API 获取取消订阅 URL

】如何从Mailchimp列表IDAPI获取取消订阅URL【英文标题】:HowtogetunsubscribeURLfromMailchimplistIDAPI【发布时间】:2019-12-0622:29:24【问题描述】:我正在努力从MailchimpAPI获取取消订阅URL。我设法通过访问返回以下json的get("lists/$list_id/sig... 查看详情

保存从 Firestore 集合中的 JSON URL 获取的列表

】保存从Firestore集合中的JSONURL获取的列表【英文标题】:SavelistgettingfromJSONURLinfirestorecollection【发布时间】:2021-05-1015:16:30【问题描述】:我的小应用程序,正在从JSON链接获取用户列表,然后将其存储在列表中,我想将此列表... 查看详情

使用 AsyncTask 从 URL 获取数据到数组列表中

】使用AsyncTask从URL获取数据到数组列表中【英文标题】:FetchingdatafromURLintoanarray-listwithAsyncTask【发布时间】:2020-10-0100:06:40【问题描述】:下面列出的原始代码有效,它将显示7,california,昨天以两行单独的行和我从网站获取的标... 查看详情