从网站获取url列表
我正在为客户部署一个replace站点,但他们不希望所有的旧页面都以404结束。 保持旧的URL结构是不可能的,因为它是可怕的。
所以我正在写一个404处理程序,应该寻找一个旧的页面被请求,并做一个永久的redirect到新的页面。 问题是,我需要一个所有旧页面URL的列表。
我可以手动执行此操作,但是如果有任何应用程序能够提供给我一个相对的列表(例如:/ page / path,而不是http:/…/page/path),那么我会感兴趣页。 就像一只蜘蛛,除了find更深的页面之外,它不关心内容。
我不是故意回答我自己的问题,但我只是想运行一个网站地图生成器。 第一个我发现http://www.xml-sitemaps.com有一个很好的文本输出。; 完美满足我的需求。
做wget -r www.oldsite.com
那么只要find www.oldsite.com
就会揭示所有的url,我相信。
或者,只需在每个404请求中提供自定义未find的页面! 也就是说,如果有人使用了错误的链接,他会看到页面没有被find,并且提示网站的内容。
这里是一个网站地图生成器列表(显然你可以从网站获得URL列表): http : //code.google.com/p/sitemap-generators/wiki/SitemapGenerators
网站地图生成器
以下是生成或维护XML Sitemaps格式文件的工具的链接,Sitemaps格式是在sitemaps.org上定义的开放标准,并由search引擎(如Ask,Google,Microsoft Live Search和Yahoo!)支持。 Sitemap文件通常包含网站上的一系列url以及这些url的一些元数据。 以下工具通常会生成“网站types”XML Sitemap和URL列表文件(有些也可能支持其他格式)。
请注意:Google尚未testing或validation本网站上列出的第三方软件的function或安全性。 请将有关软件的任何问题直接发给软件的作者。 我们希望你喜欢这些工具!
服务器端程序
- Enarion phpSitemapsNG(PHP)
- Google Sitemap生成器(Linux / Windows,32 / 64bit,开源)
- Outil PHP(法语,PHP)
- Perl站点生成器(Perl)
- Python站点生成器(Python)
- 简单的Sitemaps(PHP)
- SiteMap XMLdynamic站点生成器(PHP)$
- OS / 2的Sitemap生成器(REXX脚本)
- XML Sitemap生成器(PHP)$
CMS和其他插件:
- ASP.NET – Sitemaps.Net
- DotClear(西class牙文)
- DotClear(2)
- Drupal的
- 电子商务模板(PHP)$
- 电子商务模板(PHP或ASP)$
- LifeType的
- MediaWiki Sitemap生成器
- 例如mnoGoSearch
- OS Commerce
- phpWebSite
- Plone的
- 的RapidWeaver
- 的Textpattern
- vBulletin
- Wikka Wiki(PHP)
- WordPress的
可下载的工具
- GSiteCrawler(Windows)
- GWebCrawler&Sitemap Creator(Windows)
- G-Mapper(Windows)
- Inspyder Sitemap Creator(Windows)$
- IntelliMapper(Windows)$
- Microsys A1 Sitemap生成器(Windows)$
- 愤怒Google Sitemap Automator $(OS-X)
- 尖叫青蛙SEO蜘蛛和地图生成器(Windows / Mac)$
- 网站地图Pro(Windows)$
- 站点作家(Windows)$
- DevIntelligence的Sitemaps Generator(Windows)
- Sorrowmans网站地图工具(Windows)
- TheSiteMapper(Windows)$
- Vigos Gsitemap(Windows)
- Visual SEO Studio(Windows)
- WebDesignPros站点地图生成器(Java Webstart应用程序)
- Weblight(Windows / Mac)$
- WonderWebWare Sitemap生成器(Windows)
在线生成器/服务
- AuditMyPc.com站点地图生成器
- AutoMapIt
- Autositemap $
- Enarion phpSitemapsNG
- 免费的Sitemap生成器
- Neuroticweb.com Sitemap生成器
- ROR站点地图生成器
- ScriptSocket站点地图生成器
- SeoUtility Sitemap生成器(意大利语)
- SitemapDoc
- Sitemapspal
- SitemapSubmit
- Smart-IT-Consulting Google Sitemaps XMLvalidation程序
- XML Sitemap生成器
- XML-Sitemaps生成器
带有集成Sitemap生成器的CMS
- Concrete5
Google新闻站点地图生成器以下插件允许发布商更新Google新闻站点地图文件,这是我们在帮助中心中描述的sitemaps.org协议的一个变体。 除了Sitemap文件的正常属性之外,Google新闻站点地图还允许发布者描述他们发布的内容types,并指定各篇文章的访问级别。 有关Google新闻的更多信息,请参阅我们的帮助中心和帮助论坛。
- WordPress的新闻插件
代码片段/库
- ASP脚本
- Emacs Lisp脚本
- Java库
- Perl脚本
- PHP类
- PHP生成器脚本
如果您认为应出于正当理由添加或删除工具,请在网站站长帮助论坛中留言。
我发现最好的是使用Java的http://www.auditmypc.com/xml-sitemap.asp ,并且对页面没有限制,甚至可以将结果作为原始URL列表导出。
它也使用会话,所以如果您使用CMS,请确保在运行爬网之前注销。
所以,在一个理想的世界里,你会有一个网站所有页面的规范。 你也可以有一个testing基础设施,可以打你的所有网页来testing它们。
你大概不在一个理想的世界。 为什么不这样做?
-
在众所周知的旧url和新url之间创build一个映射。 当你看到一个旧的URL时redirect。 我可能会考虑提出一个“这个页面已经移动,这是新的url是XXX,你会很快redirect”。
-
如果您没有映射,请提供一个“对不起 – 此页面已移动,此处有一个指向主页的链接”消息,如果您愿意,可将其redirect。
-
logging所有redirect – 特别是没有映射的redirect。 随着时间的推移,为重要的页面添加映射。
我会研究任何数量的在线网站地图生成工具。 就我个人而言,过去我使用过这个 (基于Java),但是如果你做一个谷歌search“网站地图生成器”,我相信你会发现很多不同的select。
从一个Linux的盒子wget也可能是一个不错的select,因为有切换到蜘蛛和改变它的输出。
编辑:wget也可在Windows上: http : //gnuwin32.sourceforge.net/packages/wget.htm
写一个蜘蛛,它读取磁盘上的每个html,并输出“a”元素的每个“href”属性(可以用parsing器完成)。 记住哪些链接属于某个页面(这是MultiMap数据结构的常见任务)。 之后,您可以生成一个映射文件,作为404处理程序的input。