Skip to content

判断网站是否托管于Github-Pages (数据源于timqian/chinese-independent-blogs)

Notifications You must be signed in to change notification settings

saveweb/is-github-page

Repository files navigation

is-github-page

判断网站是否托管于Github-Pages (数据源于timqian/chinese-independent-blogs)

  • main.py 用于从 timqian/chinese-independent-blogs 批量自动判断网站是否为 GH-Pages
  • sigle-check.py 手动输入域名/链接来判断网站是否为 GH-Pages
  • gh-pages-check.py
    • 使用 dnspython 库完成 DNS 查询
    • 遍历查询域名的 A, CNAME, AAAA 记录, 任一查询结果符合 GitHub Pages 特征则返回结果
    • 支持通过命令行选项设置 nameservers
    • 可使用 --urls 选项直接输入 URL 查询
    • 可使用 --csv 读取远程或本地的 .csv 文件查询, .csv 文件格式需要与 blogs-original.csv 一致
    • 可使用 --output 选项可将查询结果写入文件
    • 使用 --help 选项查看脚本帮助信息

输出结果:gh-domains.txt

  • main分支的脚本,采用DNS解析到的IP来简易判断是不是Github采用的IP范围。Github有提供CIDR格式的IP列表,我懒得转换CIDR,直接取IP的前3位和Github的CIDR格式的IP列表直接字符串匹配,所以脚本会有很小很小很小的概率出现判断错误(把不是Github的IP当成是Github的IP)。但实际跑了几百个域名,没有发现这样的情况。
  • header分支的脚本,根据http请求回传的header中是否有Server: Github.com字段来判断是不是Github托管的网站,判断几乎不可能出错,但是脚本跑得慢(比IP方法慢4倍,毕竟要握手)。

About

判断网站是否托管于Github-Pages (数据源于timqian/chinese-independent-blogs)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages