使用Python解决 StackOverFlow 访问问题

Posted haivey

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用Python解决 StackOverFlow 访问问题相关的知识,希望对你有一定的参考价值。

StackOverFlow 因为要加载 google 提供的 jquery.min.js 文件,因此会卡在那好久。

 解决方案:

1. 在本地提供该文件的HTTPS服务,在hosts中将google的网址重定向到本地。

2. 其他人在可访问网络提供该文件的HTTPS服务,在hosts中将google的网址重定向到该地址。

3. 使用 FireFox 的插件

 

这里我采用方案1,并使用python开启HTTPS服务。

注意到需要访问的文件是: https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js

在Win7+Python2.7环境下,我们需要做:

  a) 用python开启HTTPS 服务;

  b) 下载jquery.min.js ,放到 /ajax/libs/jquery/1.12.4 目录下;

  c) 修改 C:\Windows\System32\drivers\etc\hosts 文件。

 

python开启HTTPS 服务:

 

import BaseHTTPServer, SimpleHTTPServer

 

import ssl
httpd = BaseHTTPServer.HTTPServer((‘localhost‘, 443),
        SimpleHTTPServer.SimpleHTTPRequestHandler)
httpd.socket = ssl.wrap_socket (httpd.socket,
        keyfile="./key.pem",
        certfile=‘./cert.pem‘, server_side=True)
httpd.serve_forever()

 

这里简单介绍一下这段代码。

 BaseHTTPServer.HTTPServer() 函数建立了一个 localhost:443 HTTP 服务。

 ssl.wrap_socket() 将一个普通的 socket 包装成一个 SSLSocket 。

 key.pem和cert.pem可以用openssl工具生成,这是个linux工具,我是安装了MinGW环境带的有,也可以在网上安装Window版本的。

  openssl req -new -x509 -days 365 -nodes -out cert.pem -keyout key.pem

 

后面的步骤: 

 在网上下载jquery.min.js:https://blog.jquery.com/2016/05/20/jquery-1-12-4-and-2-2-4-released/

 修改hosts,添加一行: 127.0.0.1   ajax.googleapis.com

 重启浏览器,OK  :-) 

 

以上是关于使用Python解决 StackOverFlow 访问问题的主要内容,如果未能解决你的问题,请参考以下文章

python 使用中遇到的问题,记录及解决方法

不能使用sudo安装Python问题,怎么解决

解决stackoverflow打开缓慢的问题

Python yield用法浅析(stackoverflow)

解决国内stackoverflow打开慢的问题

2017年StackOverflow上最好的20个Python问题