V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  xseven007  ›  全部回复第 15 页 / 共 15 页
回复总数  291
1 ... 6  7  8  9  10  11  12  13  14  15  
2013-01-13 20:18:06 +08:00
回复了 phuslu 创建的主题 Python 从远端 URL 文件中 import Python 模块
@wwqgtxx @phuslu 在github上有一个build的代码,用他那个,然后再把你需要的模块做成import很多的py文件,之后做成和phus那个一样的zip文件,这样就可以解决自己想加入模块的问题,至于用代理下文件那个,我暂时没去思考.到时有了整套思路我就把这几个功能和goagent的源码结合一下..也希望phus帮忙打包含有足够模块的zip文件,我尝试了几次用您的build做文件,都不行..可能是人品吧.本来python我也不太懂...
2013-01-13 18:26:36 +08:00
回复了 phuslu 创建的主题 Python 从远端 URL 文件中 import Python 模块
@wwqgtxx 国内的话,感觉gitshell的打开得比较快,不知道好用后否,因为不喜欢国内的托管,其实python有一种特性吧,运行的时候都已经加载到内存了,源码文件删除也没事,所以项目是可以直接更新的,先运行现有版本,如果比对版本后需要更新则下载url中的文件,python中可以用zipfile模块实现
import sys, os, zipfile
z = zipfile.ZipFile("D:\\abc.zip", 'r')

for f in z.namelist():
output = open("d:\\abc\\" + f, 'wb')
output.write(z.read(f))
output.close()
但是这个代码不支持有文件夹的zip文件,所以打包的时候就直接你可以直接只是把proxy.py和proxy.ini这两个文件压缩就行,其他的,类似运行库之类的一般不需要更新,我们还可以在境外用一个VPS做自动更新GAE服务端的事情,只要用脚本写好相应的APPID和用户名密码就可以完成每次自动更新,
2013-01-13 17:00:57 +08:00
回复了 phuslu 创建的主题 Python 从远端 URL 文件中 import Python 模块
@wwqgtxx 本地端更新可以这样,先加载本地的配置文件,然后在配置文件里面写下配置版本,然后和远端对比,要是远端版本号大于本地,就下载远端配置和远端的.py源码,之后重启软件
2013-01-13 16:56:45 +08:00
回复了 phuslu 创建的主题 Python 从远端 URL 文件中 import Python 模块
2013-01-13 10:48:07 +08:00
回复了 phuslu 创建的主题 Python 从远端 URL 文件中 import Python 模块
@wwqgtxx 其实我觉得配置文件不一定需要在境外做点,直接在境内做就行,直接可以参照wallproxy的核心代码那个加密形式就行,要是直接读取远端配置文件,而不是下载到本地,可以参照phus的代码去读取,另外我那个代码漏了一个import urllib2 r是上面写了那个r=什么什么
2013-01-12 21:46:43 +08:00
回复了 phuslu 创建的主题 Python 从远端 URL 文件中 import Python 模块
@wwqgtxx 本地端是可以这样导入的吧,但是我觉得有需要获取远端配置文件的话,可以直接先优先获取远端配置,再次检查本地配置,获取远端文件可以用到:
from os.path import basename
from urlparse import urlsplit

def url2name(url):
return basename(urlsplit(url)[2])

def download(url, localFileName = None):
localName = url2name(url)
req = urllib2.Request(url)
r = urllib2.urlopen(req)
if r.info().has_key('Content-Disposition'):
# If the response has Content-Disposition, we take file name from it
localName = r.info()['Content-Disposition'].split('filename=')[1]
if localName[0] == '"' or localName[0] == "'":
localName = localName[1:-1]
elif r.url != url:
# if we were redirected, the real file name we take from the final URL
localName = url2name(r.url)
if localFileName:
# we can force to save the file as specified name
localName = localFileName
f = open(localName, 'wb')
f.write(r.read())
f.close()


download(r'你要下载的python文件的url地址')
2013-01-12 21:03:40 +08:00
回复了 phuslu 创建的主题 Python 从远端 URL 文件中 import Python 模块
@wwqgtxx 是的,虽然可以拿到需要的模块,但是文件依然不能写入GAE服务器,所以在服务器进行自动更新还是比较困难,要是GAE能够运行外链上的.py文件.这样说不定可以以临时文件来运行
2013-01-12 16:43:05 +08:00
回复了 phuslu 创建的主题 Python 从远端 URL 文件中 import Python 模块
是让goagent的GAE服务端自动升级吧,这只能更新没有密码的服务端,用户加了密码的服务端就需要更新后修改文件内容了
2013-01-12 14:19:03 +08:00
回复了 scg16 创建的主题 问与答 为什么无法登录v2ex?
@Livid 那么登录后就无法显示v2ex的主页是什么原因,没登录之前都可以进,一旦登录了就打不开
2012-12-27 18:04:10 +08:00
回复了 nobear 创建的主题 Python [从业10年的码农发问]为什么大家都认为GoAgent是开源软件?
@aisk 能分享一下你的打包命令吗?我用的是python pybuild.py proxy.py编译出来还有外置的DLL和PYO,并且运行还报错,编译环境是WIN7 X64,python2.7.3x86 gevent1.0rc1,报错是在gevent
2012-12-27 16:10:31 +08:00
回复了 nobear 创建的主题 Python [从业10年的码农发问]为什么大家都认为GoAgent是开源软件?
@phuslu 能不能说一下用py2exe打包的时候执行的是python pybuild.py proxy.py出来的程序只有997KB的原因啊(proxy.py是goagent里面拿出来的)
1 ... 6  7  8  9  10  11  12  13  14  15  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5949 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 19ms · UTC 01:52 · PVG 09:52 · LAX 17:52 · JFK 20:52
Developed with CodeLauncher
♥ Do have faith in what you're doing.