UrlRequest错误(名称'HTTPSConnection'未定义)kivy

问题描述:

嗨!我有一个在kivy和python3上编写的现成项目。这个程序 适用于所有桌面操作系统(Windows,Linux,MacOS),但 编译成.apk文件后,UrlRequest不适用于我。我在 刚刚没有做,在建筑师;UrlRequest错误(名称'HTTPSConnection'未定义)kivy

-- requirements = pyopenssl,openssl,docutils,android,python3crystax,kivy 

-- android.permissions = INTERNET, ACCESS_NETWORK_STATE 

在Android安装.apk文件,并按下按钮 刮网站的页面后,PROGRAMM产生一个错误

**name 'HTTPSConnection' is not defined** 

这与的URLRequest代码的一部分:

def get_html(self, link): 
    try: 
     from kivy.network.urlrequest import UrlRequest 
     if isinstance(link, bytes): 
      link = link.decode('utf-8') 
     reg = UrlRequest(link, debug=True, 
         on_success=self.suc, on_error=self.err) 
     while not reg.is_finished: 
      sleep(0.5) 
      Clock.tick() 
    except HTTPError: 
     pass 

def suc(self, reg, result): 
    self.add_widget(Label(
     text=str(result), font_size='15sp', color=(0, 0, 0, 1) 
    )) 

def err(self, reg, error): 
    class Error(App): 
     def build(self): 
      win_report = BugReporter(txt_report=str(error)) 
      return win_report 
    Error().run() 
在可变(链接)

插入从一个字典的链接。

dict_links = dict({ 
    "userful_programs": "https://pcompstart.com/?view=cat&category=1", 
    "advice_on_computer": "https://pcompstart.com/?view=cat&category=2", 
    "user_windows": "https://pcompstart.com/?view=cat&category=3", 
    "articles_in_theme": "https://pcompstart.com/?view=cat&category=4", 
    "popular_program": "https://pcompstart.com/?view=cat&category=5", 
    "other": "https://pcompstart.com/?view=cat&category=6"}) 
我buildozer.spec与LOG_LEVEL = 2,连接在 此链接

完整文件记录; https://15530009509605697547.googlegroups.com/attach/38c18b633925d/logcat.txt?part=0.1&view=1&vt=ANaJVrFE1tvgVU8m0abaquknNDEzcXf_tgIMDdxEzo1tMSLUhqzNrto84pYWSc4sPxksIpmwEkAWhL_2IO2dptE2TLwFKzKJ535Vct_CDD_BgCz1M2G7u50

谢谢!

或者,如果在同一个文件,我将执行 -

from http.client import HTTPSConnection 

然后在Android编译后,我得到的错误 -

ImportError: cannot import name 'HTTPSConnection' 

还是我将执行 -

import ssl 

然后在Android编译后,我得到的错误 -

ImportError: No module named '_ssl' 

可能的kivy编译没有SSL支持。这是错误还是我错了?

不知道这是否会有所帮助,我是新手,但最近几天我经历了非常相似的考验。

实质上,我一直在用简单的HTTPS请求挣扎。我尝试了所有可能的库,例如urllib,urllib2,请求和kivy的UrlRequest,但没有运气。起初,我试过python3(和你一样),然后切换到python2,因为它似乎产生较少的错误一般(不知道这是否实际上是真的)。

最后我得到了同样的错误“HTTPSconnection not defined”,尝试了数百件事情,并最终将“httplib2”置入要求(buildozer.spec)中,并最终完成了相同的操作就像在桌面上一样。编译httplib时出现了一些错误(我已经阅读过编码方面的一些问题),但无论如何编译和工作。

我buildozer.spec重要的线路有:

requirements = kivy, android, openssl, pyopenssl, httplib2 

pyopenssl是多余的我猜

android.permissions = INTERNET, ACCESS_NETWORK_STATE 

我main.py进口测试程序:

from kivy.app import App 
from kivy.uix.label import Label 
from kivy.network.urlrequest import UrlRequest 

希望这帮助,祝你好运