文档章节

github访问太慢解决方案

豆花饭烧土豆
 豆花饭烧土豆
发布于 2017/04/08 01:29
字数 412
阅读 84
收藏 2
点赞 0
评论 1

问题描述

打开github网页太慢

问题原因

被墙,导致DNS无法访问,实际上通过配置本地域名到IP的映射可以避免查询DNS服务器,从而加快速度。

为了验证确实是DNS的问题,请前往站长之家DNS查询,可以看见很多DNS服务器都没有。

一般Github的访问有两部分:主站的访问和二级域名的资源加载(比如样式文件等)
一般Github加载缓慢,主要是 assets-cdn.github.com、avatars0.githubusercontent.com 以及 avatars1.githubusercontent.com 三个域名的解析问题。(国内很多地方解析不了)

为了提高速度,可以使用HOSTS加速对Github的域名解析。

解决方法

windows C:\Windows\System32\drivers\etc\hosts
linux /private/etc/hosts
修改hosts主机映射文件:
添加github一系列网址的IP地址、域名映射

但是github域名所对应IP好像是随时间变化的,挨个查询太麻烦,来个脚本
先建立一个域名列表haha.txt,下面列表中的gist.github.com是代码片功能,被墙得死死地。无论如何打不开。

github.com
assets-cdn.github.com
avatars0.githubusercontent.com
avatars1.githubusercontent.com
documentcloud.github.com
gist.github.com
help.github.com
nodeload.github.com
raw.github.com
status.github.com
training.github.com
github.io

然后用python语言使用requests+beautifulsoup制作一个小爬虫

import requests
from bs4 import BeautifulSoup

for i in open("haha.txt"):
    url = "http://ip.chinaz.com/" + i.strip()
    resp = requests.get(url)
    soup=BeautifulSoup(resp.text)
    x=soup.find(class_="IcpMain02")
    x=x.find_all("span",class_="Whwtdhalf")
    print(x[5].string.strip(),i.strip())

最终得到所要结果

192.30.253.113 github.com
151.101.100.133 assets-cdn.github.com
151.101.100.133 avatars0.githubusercontent.com
151.101.100.133 avatars1.githubusercontent.com
151.101.100.133 documentcloud.github.com
8.7.198.45 gist.github.com
151.101.100.133 help.github.com
192.30.253.121 nodeload.github.com
151.101.100.133 raw.github.com
174.129.214.132 status.github.com
151.101.100.133 training.github.com
23.235.33.133 github.io

关闭浏览器,重新打开,就能体验到飞一般的感觉 !

© 著作权归作者所有

共有 人打赏支持
豆花饭烧土豆
粉丝 14
博文 338
码字总数 83120
作品 0
深圳
加载中

评论(1)

wujingke
wujingke
最好的方法是自带梯子,速度快的你无法想象
Rancher 学习笔记(一) Rancher安装及简单配置

什么是Docker? Docker 是一个开源项目,诞生于 2013 年初,最初是 dotCloud 公司内部的一个业余项目。它基于 Google 公司推出的 Go 语言实现。 项目后来加入了 Linux 基金会,遵从了 Apache...

vincent927 ⋅ 2016/04/17 ⋅ 2

解决Anaconda无法安装库问题和Spyder无法安装库,以tensorflow为例

本人用Spyder安装tensorflow一直遇到个很大的问题就是,一直安装不上 会出现一个这样的提示,而且上面还有个提示就是,许可问题winerro13,我跳过了,没有截图 但是我执行他的命令的时候,p...

a781751136 ⋅ 05/06 ⋅ 0

Rust语言在2017年的发力点

Rust核心团队已经确定了Rust的路线图提案,旨在确定语言在一年内的位置。部分基于2016年Rust用户进行的调查结果,它优先改善Rust的生产力,而不牺牲速度和可靠性。 具体来说,2016年的调查显...

MtrS ⋅ 2016/10/31 ⋅ 0

git添加ssh-Key时一直提示fingerprint被使用怎么解决

如题,我在github.com添加的KEY,由于github.com太慢,我又换到git.oschina.net,上,再添加KEY时,就一直报 fingerprint已经被使用,可是我在github.com把key都删除了,怎么在git.oschina.n...

lifezq ⋅ 2013/10/22 ⋅ 7

Qt 处理大数据量解决方案

由于项目中需要用到QTableWidget来显示数据,测试过1W条数据在4-5s, 10W数据已经两分钟都没有显示出来,觉得处理的太慢无法接受。压力测试的目标是百万千万级别的大数据量,求解决方案!...

吥楛糖 ⋅ 2012/07/25 ⋅ 7

Github Pages 开启 HTTPS 与 CDN 图片加速

20170621更新:最好不要使用360的网站卫士,访问加速实在是太差,还不如直接访问源网站的速度快。囧!!!! 由于Github Pages自带的域名支持开启HTTPS服务,自定义域名则不支持开启HTTPS服务...

xiaolyuh ⋅ 02/07 ⋅ 0

本地电脑无法访问https://git.oschina.net/

请问各位大神们: 我在windows系统中配置GIT ssh,由于尝试了多次密钥的生成。突然在我的机子上无法访问https://git.oschina.net/,但是在手机上可以访问。访问时提示git.oschina.net 使用了...

jmuboy ⋅ 2017/09/09 ⋅ 3

Android推送通知指南

在开发Android和iPhone应用程序时,我们往往需要从服务器不定的向手机客户端即时推送各种通知消息,iPhone上已经有了比较简单的和完美的推送通知解决方案,可是Android平台上实现起来却相对比...

z.net ⋅ 2012/10/18 ⋅ 0

Android推送方式比较

在开发Android和iPhone应用程序 时,我们往往需要从服务器不定的向手机客户端即时推送各种通知消息,iPhone上已经有了比较简单的和完美的推送通知解决方案,可是Android平台 上实现起来却相对...

蜗牛TT ⋅ 2012/07/26 ⋅ 3

Android推送通知指南

在开发Android和iPhone应用程序时,我们往往需要从服务器不定的向手机客户端即时推送各种通知消息,iPhone上已经有了比较简单的和完美的推送通知解决方案,可是Android平台上实现起来却相对比...

AlexZhuang ⋅ 2012/04/14 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

彻底删除Microsoft Office的方法

参照此链接彻底删除Office https://support.office.com/zh-cn/article/%e4%bb%8e-pc-%e5%8d%b8%e8%bd%bd-office-9dd49b83-264a-477a-8fcc-2fdf5dbf61d8?ui=zh-CN&rs=zh-CN&ad=CN......

Kampfer ⋅ 21分钟前 ⋅ 0

大盘与个股之间关系

大盘走多:积极出手 顺势加码 大盘走空: 少量出手 退场观望 大盘做头:逆势减码 少量操作 大盘做底 : 小量建仓 小量试单

guozenhua ⋅ 23分钟前 ⋅ 0

Day16 LVM(逻辑卷管理)与磁盘故障小案例

lvm详解 简述 LVM的产生是因为传统的分区一旦分区好后就无法在线扩充空间,也存在一些工具能实现在线扩充空间但是还是会面临数据损坏的风险;传统的分区当分区空间不足时,一般的解决办法是再...

杉下 ⋅ 29分钟前 ⋅ 0

rsync实现多台linux服务器的文件同步

一、首先安装rsync,怎样安装都行,rpm,yum,还是你用源码安装都可以。因为我用的是阿里云的ESC,yum install rsync就ok了。 二、配置rsync服务 1.先建立个同步数据的帐号 123 groupadd r...

在下头真的很硬 ⋅ 42分钟前 ⋅ 0

前端基础(三):函数

字数:1685 阅读时间:5分钟 函数定义 在最新的ES规范中,声明函数有4中方法: -函数声明 -函数表达式 -构造函数Function -生成器函数 1.函数声明 语法: function name([param[, param2 [....

老司机带你撸代码 ⋅ 今天 ⋅ 0

Java虚拟机的Heap监狱

在Java虚拟机中,我是一个位高权重的大管家,他们都很怕我,尤其是那些Java 对象,我把他们圈到一个叫做Heap的“监狱”里,严格管理,生杀大权尽在掌握。 中国人把Stack翻译成“栈”,把Hea...

java高级架构牛人 ⋅ 今天 ⋅ 0

Spring MVC基本概念

只写Controller

颖伙虫 ⋅ 今天 ⋅ 0

微软重金收购GitHub的背后逻辑原来是这样的

全球最大的开发者社区GitHub网站花落谁家的问题已经敲定,微软最终以75亿美元迎娶了这位在外界看来无比“神秘”的小家碧玉。尽管此事已过去一些时日,但整个开发者世界,包括全球各地的开源社...

linux-tao ⋅ 今天 ⋅ 0

磁盘管理—逻辑卷lvm

4.10-4.12 lvm 操作流程: 磁盘分区-->创建物理卷-->划分为卷组-->划分成逻辑卷-->格式化、挂载-->扩容。 磁盘分区 注: 创建分区时需要更改其文件类型为lvm(代码8e) 分区 3 已设置为 Linu...

弓正 ⋅ 今天 ⋅ 0

Spring源码解析(六)——实例创建(上)

前言 经过前期所有的准备工作,Spring已经获取到需要创建实例的 beanName 和对应创建所需要信息 BeanDefinition,接下来就是实例创建的过程,由于该过程涉及到大量源码,所以将分为多个章节进...

MarvelCode ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部