站点地图生成器,从头开始构建

发布于 2024-11-05 22:12:47 字数 100 浏览 2 评论 0原文

我想知道如何用 php 构建一个网站爬虫,它可以检测网站的每个页面并在 xml 文件中生成一个条目。我见过很多网站都这样做,所以我很好奇如何从头开始,或者有任何脚本或教程可以教授这一点。

I'd like to know how to build a site crawler, in php, that detects each page of a website and generates an entry in a xml file. I've seen plenty of websites doing this so I'm curious how to do it from scratch or there is any script or tutorial to teach that.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

—━☆沉默づ 2024-11-12 22:12:47

不要使用正则表达式。解析 html 的正确方法是使用 DOMDocument 对象。

  1. 将第一页加载到 DOMDocument 对象中。
  2. 使用 XPath 语句收集该页面中找到的所有锚标记 href。
  3. 使用这些值来查找更多要加载的页面,以便重新开始第一步。

http://www.php.net/manual/en/class.domdocument.php

don't use regex. the proper way to parse html would be by using a DOMDocument object.

  1. Load the first page into a DOMDocument object.
  2. Use XPath statements to gather all of the anchor tag hrefs foudn in that page.
  3. Use those values to find more pages to load, to start over with on step one again.

http://www.php.net/manual/en/class.domdocument.php

反话 2024-11-12 22:12:47

这是算法
步骤1->获取网站的地址,验证该地址的格式是否正确,并且以页面 (www.xyz.com/page.html) 结尾,而不是 (www.xyz.com/)。
步骤2->获取文件内容,使用正则表达式尝试获取页面列表。
步骤3->将它们收集到数据库中以供将来使用,并对这些文件执行第 2 步。

Here is the algorithm
Step 1-> Get a site's address, verify the address is in correct format and it ends with a page (www.xyz.com/page.html) not like (www.xyz.com/).
Step 2-> Get the contents of the file, using regular expression try to get the list of pages.
Step 3-> Harvest them in the DB for future use and do the step 2 on those files too.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文