问题描述
我正在构建一个 kivy android 应用程序,但是当我尝试在 android 上执行它时,它停止工作,我得到了这个:
urllib.error.URLError: <urlopen error [SSL: CERTIFICATE_VERIFY_Failed] certificate verify Failed: unable to get local issuer certificate (_ssl.c:1108)>
这是main.py
from kivymd.app import MDApp
from kivy.lang import Builder
class YoutubedownloaderApp(MDApp):
def build(self):
self.title = "Youtube Downloader"
self.theme_cls.primary_palette = "Red"
self.theme_cls.primary_hue = "400"
self.theme_cls.theme_style = "Dark"
return Builder.load_file("youtubedownloader.kv")
def download_video(self,query):
self.root.ids["mdlab1"].text = "Sto scaricando il video..."
yt = YouTube(query)
title = yt.title
ys = yt.streams.get_highest_resolution()
lnomefile = str.lower(title)
nomefile = lnomefile.replace(" ","")
self.root.ids["mdlab1"].text = "Sto scaricando il video..."
ys.download(filename=nomefile)
self.root.ids["mdlab1"].text = "Video scaricato!"
def convert_button(self):
self.root.ids["mdlab1"].text = "Sto scaricando il video..."
query = self.root.ids["mdtext1"].text
self.download_video(query)
YoutubedownloaderApp().run()
我不知道有什么问题,这是我第一次尝试使用 kivy。
解决方法
你应该在 main.py 中添加这个
import certifi
import os
# Here's all the magic !
os.environ['SSL_CERT_FILE'] = certifi.where()