这是命令链接检查器,可以使用我们的多个免费在线工作站之一在 OnWorks 免费托管服务提供商中运行,例如 Ubuntu Online、Fedora Online、Windows 在线模拟器或 MAC OS 在线模拟器
程序:
您的姓名
linkchecker - 用于检查 HTML 文档和网站是否有损坏链接的命令行客户端
概要
链接检查器 [选项[文件或网址] ...
商品描述
LinkChecker 功能
·递归和多线程检查,
· 以彩色或普通文本、HTML、SQL、CSV、XML 或站点地图图形输出
不同的格式,
· 支持 HTTP/1.1、HTTPS、FTP、mailto:、news:、nntp:、Telnet 和本地文件
链接,
· 限制使用 URL 过滤器检查链接,
·代理支持,
· HTTP、FTP和Telnet的用户名/密码授权,
·支持robots.txt排除协议,
· 支持Cookies
· 支持HTML5
· HTML 和 CSS 语法检查
·防病毒检查
· 命令行、GUI 和 Web 界面
示例
最常见的用法是递归地检查给定的域:
链接检查器 http://www.example.com/
请注意,这会检查可能有数千个 URL 的整个站点。 使用 -r
限制递归深度的选项。
不要检查网址 /秘密 以其名义。 所有其他链接都照常检查:
链接检查器 --ignore-url=/秘密 mysite.example.com
在 Unix 上检查本地 HTML 文件:
链接检查器 ../bla.html
在 Windows 上检查本地 HTML 文件:
链接检查器 c:\temp\test.html
你可以跳过 http:// url 部分,如果域以 :
链接检查器 www.example.com
你可以跳过 ftp:// url 部分,如果域以 FTP。:
链接检查器 -r0 ftp.example.com
生成站点地图图形并使用 graphviz dot 实用程序对其进行转换:
链接检查器 -dot -v www.example.com | 点 -Tps > 网站地图.ps
配置
一般用途总体评估 选项
-f文件名, --配置=文件名
使用 VHDL 语言编写 文件名 作为配置文件。 默认情况下,LinkChecker 使用
〜/.linkchecker/linkcheckerrc.
-h, - 帮帮我
帮我! 打印此程序的使用信息。
--标准输入
读取以空格分隔的 URL 列表以从标准输入中检查。
-tNUMBER, --线程=NUMBER
生成不超过给定数量的线程。 默认线程数是
100. 要禁用线程,请指定一个非正数。
-V, - 版
打印版本并退出。
--list-插件
打印可用的检查插件并退出。
输出 选项
-DSTRING, --调试=STRING
打印给定记录器的调试输出。 可用的记录器是 CMDLINE,
检查, 缓存, GUI, DNS 和 所有. 指定 所有 是指定所有的别名
可用的记录器。 可以多次给出该选项以调试超过
一个记录器。 为了获得准确的结果,在调试运行期间将禁用线程。
-F型[/编码][/文件名], --文件输出=型[/编码][/文件名]
输出到文件 链接检查器。型, $HOME/.linkchecker/黑名单 黑名单
输出,或 文件名 如果指定。 这 编码 指定输出编码,
默认是您的语言环境。 有效编码列于
http://docs.python.org/library/codecs.html#标准编码.
- 文件名 和 编码 的一部分 没有 输出类型将被忽略,否则如果
该文件已经存在,它将被覆盖。 您可以更多地指定此选项
不止一次。 有效的文件输出类型是 文本, HTML, SQL, CSV, GML, 点, XML,
网站地图, 没有 or 黑名单. 默认为无文件输出。 各种输出类型
记录如下。 请注意,您可以使用该选项抑制所有控制台输出
-o 没有.
- 无状态
不要打印检查状态消息。
--无警告
不要记录警告。 默认是记录警告。
-o型[/编码], --输出=型[/编码]
指定输出类型为 文本, HTML, SQL, CSV, GML, 点, XML, 网站地图, 没有 or
黑名单. 默认类型是 文本. 下面记录了各种输出类型。
- 编码 指定输出编码,默认是您的语言环境。
有效编码列于 http://docs.python.org/library/codecs.html#标准-
编码.
-q, - 安静的
安静运行,别名 -o 没有. 这仅适用于 -F.
-v, --详细
记录所有检查的 URL。 默认是只记录错误和警告。
-W正则表达式, --警告-正则表达式=正则表达式
定义一个正则表达式,如果它匹配任何内容,则打印警告
检查链接。 这仅适用于有效页面,因此我们可以获取其内容。
使用它来检查包含某种形式错误的页面,例如“此页面
已移动”或“Oracle 应用程序错误”。
请注意,正则表达式中可以组合多个值,例如
“(此页面已移动|Oracle 应用程序错误)”。
见章节 定期 表情 获取更多信息。
检查 选项
--cookie文件=文件名
读取包含初始 cookie 数据的文件。 cookie 数据格式解释如下。
--检查外部
检查外部 URL。
--忽略网址=正则表达式
匹配给定正则表达式的 URL 将被忽略并且不被检查。
可以多次给出此选项。
见章节 定期 表情 获取更多信息。
-NSTRING, --nntp-服务器=STRING
指定一个 NNTP 服务器 新闻: 链接。 默认是环境变量
NNTP_服务器. 如果没有给出主机,则只检查链接的语法。
--no-follow-url=正则表达式
检查但不递归到匹配给定正则表达式的 URL。
可以多次给出此选项。
见章节 定期 表情 获取更多信息。
-p, - 密码
从控制台读取密码并将其用于 HTTP 和 FTP 授权。 用于 FTP
默认密码是 匿名的@. 对于 HTTP,没有默认密码。 也可以看看
-u.
-rNUMBER, --递归级别=NUMBER
递归检查所有链接到给定深度。 负深度将启用
无限递归。 默认深度是无限的。
--超时=NUMBER
以秒为单位设置连接尝试的超时时间。 默认超时时间为 60
秒。
-uSTRING, --用户=STRING
尝试使用给定的用户名进行 HTTP 和 FTP 授权。 对于 FTP 默认
用户名是 匿名. 对于 HTTP,没有默认用户名。 也可以看看 -p.
--用户代理=STRING
指定要发送到 HTTP 服务器的 User-Agent 字符串,例如
“Mozilla/4.0”。 默认为“LinkChecker/XY”,其中 XY 是当前版本
链接检查器。
配置 FILES
配置文件可以指定上述所有选项。 他们还可以指定一些选项
不能在命令行上设置。 看 链接检查器(5) 了解更多信息。
OUTPUT 类型
请注意,默认情况下仅记录错误和警告。 你应该使用 --详细
选项以获取完整的 URL 列表,尤其是在输出站点地图图形格式时。
文本 标准文本记录器,以关键字记录 URL:参数方式。
HTML 在关键字中记录 URL:参数方式,格式为 HTML。 另外有链接
到引用的页面。 无效的 URL 具有 HTML 和 CSS 语法检查链接
附加。
CSV CSV 格式的日志检查结果,每行一个 URL。
GML 将链接 URL 之间的父子关系记录为 GML 站点地图图。
点 将链接 URL 之间的父子关系记录为 DOT 站点地图图。
xml文件 将检查结果记录为 GraphXML 站点地图图。
XML 日志检查结果为机器可读的 XML。
网站地图
日志检查结果为 XML 站点地图,其协议记录在
http://www.sitemaps.org/protocol.html.
SQL 使用 INSERT 命令将检查结果记录为 SQL 脚本。 要创建的示例脚本
初始 SQL 表包含在 create.sql 中。
黑名单
适用于 cron 工作。 将检查结果记录到文件中 ~/.linkchecker/黑名单
仅包含具有无效 URL 的条目及其出现的次数
失败。
没有 什么都不记录。 适用于调试或检查退出代码。
定期 表情
LinkChecker 接受 Python 正则表达式。 看 http://docs.python.org/
操作方法/regex.html 介绍。
另外一个是前导感叹号否定正则表达式。
COOKIE FILES
cookie 文件包含标准 HTTP 标头 (RFC 2616) 数据,其中可能包含以下内容
绍菜、黄芽菜、结球白菜、包心白菜
主办方 (必填)
设置 cookie 的有效域。
途径 (可选)
给出 cookie 值的路径; 默认路径是 /.
设置cookie (必填)
设置 cookie 名称/值。 可以多次给予。
多个条目由一个空行分隔。 下面的例子将发送两个 cookie
到所有以 http://example.com/hello/ 和所有以开头的 URL 之一
https://example.org/:
主机:example.com
路径:/你好
设置 cookie: ID="smee"
设置cookie:垃圾邮件=“鸡蛋”
主机:example.org
设置cookie:行李=“精英”; 评论=“全息图”
代表委任 客户服务
要在 Unix 或 Windows 上使用代理,请设置 $http_proxy、$https_proxy 或 $ftp_proxy
代理 URL 的环境变量。 URL 应该是这样的形式
http://[用户:通过@]主持人[:端口]。 LinkChecker 还检测手动代理设置
Windows 系统下的 Internet Explorer,Linux 系统上的 gconf 或 KDE。 在 Mac 上使用
Internet Config 以选择代理。 您还可以在
$no_proxy 环境变量忽略这些域的任何代理设置。
例如,在 Unix 上设置 HTTP 代理如下所示:
导出 http_proxy="http://proxy.example.com:8080"
还支持代理身份验证:
导出 http_proxy="http://user1:[电子邮件保护]:8081"
在 Windows 命令提示符下设置代理:
设置 http_proxy=http://proxy.example.com:8080
执行 检查
所有 URL 都必须通过初步语法测试。 轻微的引用错误将发出
警告,所有其他无效的语法问题都是错误。 语法检查通过后,
URL 排队等待连接检查。 下面描述了所有连接检查类型。
HTTP 链接 (HTTP:, HTTPS:)
连接到给定的 HTTP 服务器后,将请求给定的路径或查询。 全部
遵循重定向,如果给出用户/密码,它将被用作
必要时授权。 除了 2xx 之外的所有最终 HTTP 状态代码都是
错误。 HTML 页面内容被检查递归。
本地文件(文件:)
可以打开的常规可读文件是有效的。 一个可读的目录也是
有效的。 所有其他文件,例如设备文件、不可读或不存在的文件
是错误。 递归检查 HTML 或其他可解析的文件内容。
邮件链接(站长:)
mailto: 链接最终会解析为电子邮件地址列表。 如果一个地址
失败,整个列表都将失败。 对于每个邮件地址,我们检查以下内容
东西:
1)检查地址语法,前后两部分
标志。
2) 查找 MX DNS 记录。 如果我们没有发现 MX 记录,
打印错误。
3) 检查其中一个邮件主机是否接受 SMTP 连接。
首先检查优先级较高的主机。
如果没有主机接受 SMTP,我们将打印警告。
4) 尝试用 VRFY 命令验证地址。 如果我们得到
一个答案,打印经过验证的地址作为信息。
FTP 链接 (FTP:)
对于 FTP 链接,我们执行以下操作:
1)连接到指定的主机
2) 尝试使用给定的用户名和密码登录。 默认的
用户是“匿名”,默认密码是“匿名@”。
3) 尝试切换到给定目录
4)用NLST命令列出文件
Telnet 链接 (``telnet:``)
我们尝试连接,如果给出用户/密码,请登录
给定的 telnet 服务器。
NNTP 链接(“新闻:”、“新闻:”、“nntp”)
我们尝试连接到给定的 NNTP 服务器。 如果新闻组或
文章被指定,尝试从服务器请求它。
不支持的链接(``javascript:`` 等)
不受支持的链接只会打印警告。 没有进一步检查
将被制作。
可以找到已识别但不受支持的链接的完整列表
,在 链接检查/检查器/unknownurl.py 源文件。
其中最突出的应该是 JavaScript 链接。
PLUGINS
有两种插件类型:连接插件和内容插件。 连接插件运行
成功连接到 URL 主机后。 如果 URL 类型,则运行内容插件
有内容(例如,mailto:URL 没有内容)并且检查是否被禁止
(即通过 HTTP robots.txt)。 看 链接检查器 --list-插件 插件列表及其
文档。 所有插件都通过 链接检查器(5)配置文件。
递归
在递归下降到 URL 之前,它必须满足几个条件。 他们是
按此顺序检查:
1. URL 必须有效。
2. URL 必须是可解析的。 这目前包括 HTML 文件,
Opera 为文件和目录添加书签。 如果文件类型不能
被确定(例如它没有通用的 HTML 文件
扩展名,并且内容看起来不像 HTML),假设
不可解析。
3. URL 内容必须是可检索的。 通常是这种情况
除了例如 mailto: 或未知的 URL 类型。
4. 不得超过最大递归级别。 它被配置
与 --递归级别 选项,默认情况下是无限制的。
5. 它不能匹配被忽略的 URL 列表。 这是控制与
这些因素包括原料奶的可用性以及达到必要粉末质量水平所需的工艺。 --忽略网址 选项。
6. 机器人排除协议必须允许 URL 中的链接
递归地跟随。 这是通过搜索
HTML 标头数据中的“nofollow”指令。
请注意,目录递归读取该目录中的所有文件,而不仅仅是一个子集
喜欢 索引.htm*.
附注
命令行上的 URL 以 FTP。 被当作 ftp://ftp., 以
被当作 http://www.. 您还可以将本地文件作为参数提供。
如果您的系统配置为自动建立到 Internet 的连接
(例如使用拨号),它会在检查未指向本地主机的链接时连接。
使用 --忽略网址 防止这种情况发生的选项。
不支持 Javascript 链接。
如果您的平台不支持线程,LinkChecker 会自动禁用它。
您可以在配置文件中提供多个用户/密码对。
检查时 新闻: 链接给定的 NNTP 主机不需要与主机相同
浏览您网页的用户。
环境
NNTP_服务器 - 指定默认的 NNTP 服务器
HTTP_PROXY - 指定默认的 HTTP 代理服务器
ftp_代理 - 指定默认的 FTP 代理服务器
无代理 - 不通过代理服务器联系的域的逗号分隔列表
LC_消息, 朗, 语言 - 指定输出语言
返回 VALUE
返回值为 2 时
· 发生程序错误。
返回值为 1 时
· 发现无效链接或
· 发现链接警告并启用警告
否则返回值为零。
限制
LinkChecker 消耗内存来检查每个排队的 URL。 有数千个排队的 URL
消耗的内存量可能会变得非常大。 这可能会减慢程序或
甚至整个系统。
使用 onworks.net 服务在线使用 linkchecker