screen-scraping - 从本地主机网站上的所有页面获取 <title> 值列表的最快方法

标签 screen-scraping web-crawler

我基本上想爬取我的本地站点并创建一个包含所有标题和 URL 的列表,如下所示:

http://localhost/mySite/Default.aspx 我的主页
http://localhost/mySite/Preferences.aspx 我的首选项
http://localhost/mySite/Messages.aspx 消息

我正在运行 Windows。我愿意接受任何可行的方法——C# 控制台应用程序、PowerShell、一些现有工具等。我们可以假设该标签确实存在于文档中。

注意:我需要实际抓取文件,因为标题可能是在代码中设置的,而不是在标记中设置的。

最佳答案

一个快速而肮脏的 Cygwin Bash 脚本可以完成这项工作:

#!/bin/bash
for file in $(find $WWWROOT -iname \*.aspx); do
  echo -en $file '\t'
  cat $file | tr '\n' ' ' | sed -i 's/.*<title>\([^<]*\)<\/title>.*/\1/'
done

说明:这会找到根目录 $WWWROOT 下的每个 .aspx 文件,用空格替换所有换行符,以便 <title> 之间没有换行符。和 </title> ,然后抓取这些标签之间的文本。

关于screen-scraping - 从本地主机网站上的所有页面获取 &lt;title&gt; 值列表的最快方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/335232/

相关文章:

c# - 使用 HTMLAgilityPack 选择所有 <p >'s from a Node' s children

php - 从远程页面获取 JavaScript 变量?

java - 使用 JSoup for Java 时出现 HTML 格式问题

seo - 使用网页上的按钮。 Google 会索引他们的链接吗?

perl - 使用 perl 的网络爬虫

python - 使用 Selenium/Python 的 CSS 选择器中的 OR 条件

ruby - 使用 Mechanize 和 Ruby 抓取动态页面

hadoop - Nutch 2.3.1 只爬取种子URL

r - 映射博客之间的链接连接的最佳方式是什么?

javascript - 使用 JavaScript 进行网页抓取?