Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python ';ValueError:未知的url类型位于';tkinter和urllib_Python_Tkinter_Urllib - Fatal编程技术网

Python ';ValueError:未知的url类型位于';tkinter和urllib

Python ';ValueError:未知的url类型位于';tkinter和urllib,python,tkinter,urllib,Python,Tkinter,Urllib,看来我遗漏了一些非常重要的东西。即使在GUI窗口弹出或单击按钮之前,我也会遇到此错误 当我在entry中输入数据时,它应该将数据传递到“url\u链接”中,该链接在“get\u data\u url”中进一步传递。“get_data_url”功能应该在按下按钮后执行,但它是在开始时执行的。我不确定这里出了什么问题 Traceback (most recent call last): File "gui.py", line 100, in <module>

看来我遗漏了一些非常重要的东西。即使在GUI窗口弹出或单击按钮之前,我也会遇到此错误

当我在entry中输入数据时,它应该将数据传递到“url\u链接”中,该链接在“get\u data\u url”中进一步传递。“get_data_url”功能应该在按下按钮后执行,但它是在开始时执行的。我不确定这里出了什么问题

Traceback (most recent call last):
  File "gui.py", line 100, in <module>
    btn1 = Button(win, text="Submit", command = get_data_url(url_link))
  File "gui.py", line 50, in get_data_url
    req = Request(url_link, headers={'User-Agent': 'Mozilla/5.0'})
  File "/usr/lib/python3.8/urllib/request.py", line 328, in __init__
    self.full_url = url
  File "/usr/lib/python3.8/urllib/request.py", line 354, in full_url
    self._parse()
  File "/usr/lib/python3.8/urllib/request.py", line 383, in _parse
    raise ValueError("unknown url type: %r" % self.full_url)
ValueError: unknown url type: '/wp-json/wp/v2/posts/?per_page=100'

您应该在Submit按钮的回调中获取
条目的内容,构造URL并调用
get\u data\u URL()

def submit():
urlhere=entry1.get()
url\u link=urlhere+“/wp json/wp/v2/posts/?每页=100”
获取数据url(url链接)
btn1=按钮(win,text=“Submit”,command=Submit)

您应该在Submit按钮的回调中获取
条目的内容,构造URL并调用
get\u data\u URL()

def submit():
urlhere=entry1.get()
url\u link=urlhere+“/wp json/wp/v2/posts/?每页=100”
获取数据url(url链接)
btn1=按钮(win,text=“Submit”,command=Submit)

错误可能是由事件驱动编程引起的,您在运行时在此处分配
url\u的值,这意味着它将是空的(因为框在开始时是空的),因此要修复它,请将其移动到函数内部,如:

# Same code

def get_data_url():
    urlhere = entry1.get()    
    url_link = urlhere + "/wp-json/wp/v2/posts/?per_page=100"

    req = Request(url_link, headers={'User-Agent': 'Mozilla/5.0'})
    webpage = urlopen(req).read()
    ## Fetching hostname of the URL
    .... # Same code    

btn1 = Button(win, text="Submit", command=get_data_url)

您可以删除该参数,因为您不必再使用它。

该错误可能是由于事件驱动编程造成的,您在运行时在此处分配
url\u的值,这意味着它将是空的(因为框在开始时是空的),因此要修复它,请将其移动到函数内部,如:

# Same code

def get_data_url():
    urlhere = entry1.get()    
    url_link = urlhere + "/wp-json/wp/v2/posts/?per_page=100"

    req = Request(url_link, headers={'User-Agent': 'Mozilla/5.0'})
    webpage = urlopen(req).read()
    ## Fetching hostname of the URL
    .... # Same code    

btn1 = Button(win, text="Submit", command=get_data_url)

您可以删除该参数,因为您不必再使用它。

粘贴整个错误代码。@CoolCloud已更新。tkinter的基础知识-
command=lambda:get\u data\u url(url\u链接)
@CoolCloud谢谢您,但它没有解决主要错误。为什么您的URL没有
www
.com
?粘贴整个错误代码。@CoolCloud已更新。tkinter的基础知识-
命令=lambda:get\u data\u URL(URL\u链接)
@CoolCloud谢谢您,但它没有解决主要错误。为什么您的URL没有
www
.com