Closed kukukumiko-git closed 1 year ago
开发者指南里的.spec失效了
是什么意思?
或许可以参考https://github.com/URenko/Accesser/blob/master/.github/workflows/test.yml ,不过没测试过
无法连上是什么样的错误?
开发者指南里的https://gist.github.com/URenko/ea511f422c225887ae2c49ccaab64839 这个链接打不开,应该是我没表达清楚,可能是因为墙的问题,但目前我没法用梯子。
test.yml里的命令直接运行会提示这个
但tset.yml里的accesser.spec链接可以打开,我直接按accesser.spec里的要求改了spec文件
但是accesser.spec里有一行
('Python安装的目录/Lib/site-packages/tld/res/effective_tld_names.dat.txt', 'tld/res')],
python安装目录下并没一tld文件夹,包是在项目的venv文件夹里,是不是这里搞错了什么。。。。
总之我试着把项目目录下的tld文件夹复制到python安装目录的对应文件夹里,然后错误变成了
无法连上网页是ERR_CONNECTION_TIMED_OUT
IED里错误是urllib.error.URLError:<urlopen error [WinError 10060] 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。>
test.yml里的命令直接运行会提示这个
这是因为你这个终端是powershell,curl实为Invoke-WebRequest,我写的-OL
是(真正的)curl的参数
呃,用venv啊,这我还真没考虑到。虽然直接把tld复制到python安装目录对应位置理应工作,但不知道为什么你这不行。
或许你可以:
✦放弃venv,直接外面安装tld(先删掉)
或者
✦在venv目录下找到effective_tld_names.dat.txt
的位置并在accesser.spec中替换对应路径
直接运行的话有日志吗 也可以用cmd的(真正的)curl试下,比如:
curl -x socks5h://127.0.0.1:7655 https://www.pixiv.net
在换成名字后面不带括号项目名的解释器后就好了,真是不知道怎么回事。。。 tld包还是在项目的venv里
但是程序好像是完全不起作用的,总之附上日志吧 Accesser.log
没用过你这个IDE,所以我也不知道它做了什么(我都直接用python)
从日志上来看,端口被占用,是不是开了另一个程序,或许可以任务管理器检查下 然后curl看看
我自己生成的版本连不上,关掉之后,再打开Releases的就是正常的。应该不是端口问题吧 不知道哪不对,整麻了
(cmd的)curl怎么说
什么都没有,光标直接在下一行开头,什么也不能再输入 我确实已经安装了curl
日志里也没有pixiv.net吗,如果是这样那就奇怪了
你好啊,我尝试在另一个目录新建了项目,一样配置了环境,然后生成程序报错变成了
这个项目里没有venv,库都是安在python目录里(我还是超级菜鸟,没太明白venv是怎么回事。。
config.json.default的第三行写错了?
你好啊,我发现吧config.json.default第三行改回null就不报错了,但是生成的程序还是不能用orz,而且也没日志生成了
可以发下生成的可执行文件吗
这里有两个不同的文件 一个是最初尝试的,这个的config.json.default里是accesser.log而不报错,可以生成日志,命名是_log 另一个是我在另一个目录新建一个项目,结果config.json.default必须要是null才不报错,命名是_null accesser.zip
抱歉前面说错了,应该是
curl -x http://127.0.0.1:7655 https://www.pixiv.net/
因为Accesser还不支持socks5 (#66) (时间太久给忘了)
然后问题应该出在dnscrypt版本的问题,不支持bootstrap_resolvers
这个配置文件的值(https://github.com/URenko/Accesser/issues/53#issuecomment-922273073 )。见你%tmp%\_MEI一串数字\dnscrypt\dnscrypt-proxy.log下的日志
你似乎用的是一个老版本(2.0.23)的dnscrypt,见https://github.com/DNSCrypt/dnscrypt-proxy/releases/tag/2.1.0 及 https://github.com/URenko/Accesser/commit/5e93c5eb41fc824d0c930a6c10025db956086d53 的变更。 换一个新的dnscrypt或者改用老版本的写法可能能解决问题(我没测试)
另外不建议直接改config.json.default,你可以在.exe旁边建一个config.json写你想要的配置,会优先使用
curl结果是
curl: (35) schannel: next InitializeSecurityContext failed: Unknown error (0x80092012) - 由于吊销服务器已脱机,吊销功能 无法检查吊销。
是证书有问题吗?releases的程序是可以用的
至于版本问题,是我也怀疑是否是版本问题,直接从releases的程序运行后的tmp里拉了exe出来,而我一开始用的dnscrypt是2.1.2,可以看我一开始发的目录截图。
用2.1.0后也情况都没有改变,两个都依然无效,(新建项目的那一个)config.json.default第三行还是得是null才行,另外好像并没有优先读取config.json
curl这个似乎是Windows的问题,你可以加--insecure
忽略这一点
你可以把用高版本dnscrypt的和非null config.json.default的.exe都发上来看看
accesser_log_2.10.zip
curl结果是
curl: (5) Could not resolve proxy
我试了下accesser_log_2.10.zip是可以工作的,并且外面的config.json也是可以读取的 你确定你打的是
curl -x http://127.0.0.1:7655 https://www.pixiv.net/ --insecure
至于accesser_null_2.10.zip,你Accesser.log没加双引号,它是个字符串
确实是我打错了。。。 现在curl也出来这些东西,但是网页还是打不开,而release版的一直都正常
端口应该没占用吧
另外我想用火狐试试,但现在在点击了webui导入证书以后弹出的是下载crt文件,下载完成后直接是windows的安装证书,所以没有尝试
我怀疑你的代理设置不太对,你可以检查下系统的设置(因为chrome使用系统的)
Firefox的行为似乎有变更,现在似乎也会使用系统的证书,因此不用再导入(至少我试了是这样)。但手动设置代理应该还是要的。见 https://github.com/URenko/Accesser/wiki/Firefox设置方法
会不会和chrome装了 SwitchySharp 有关系 但什么都不变关掉再打开release版就没问题
有可能,但还是建议检查下系统的代理设置。因为你sysprorxy是自己编译的(sysproxy负责自动设置系统代理)
系统设置。。。我能想到只要这个了 实际上后面的sysprorxy已经是从V2ray里直接拿出来的了 另外我多试了一下,发现release的程序也会有有的网站curl有结果,但是上不去
因为难以复现你的情况……建议先使用Firefox手动设置代理
因为试着加了几个网站,所以开始折腾生成程序,运行然后报错,python版本3.10
py库肯定都是装了的 翻了指南和issue,sysporxy自己编译的直接放到根目录,dnsscrypt应该是win64版吧,只拿出里面的exe放到dnscrypt文件夹 开发者指南里的.spec失效了,但自带的spec应该是可以用的吧,直接
pyinstaller accesser.spec
另外直接再IDE运行好像也没有成功,第一次运行弹出安装证书有webUI,但是无法连上支持的网站(包括原有的和我自己加的,而直接下载发布的程序运行是可以上去的)