簡體   English   中英

ValueError:未知的URL類型:'h'

[英]ValueError: unknown url type: 'h'

好的,所以我正在盡力運行此程序,並且我相信此功能是問題所在

urls = ('http://3.bp.blogspot.com/-SC-w7eTgpM0/URE9NsI_nuI/AAAAAAAAAGE/YmlWnimNuPM/s1600/7957178556_001939ffc5_z.jpg')
for addr in urls:
        get_img_from_web(addr)
images, names = scan_dir()
lum_values = []
for i in range(256):
        lum_values.append(i)
header = 'Jack Tompkins\n'+','.join(str(lum) for lum in lum_values)+'\n\n'
with open('p1TompkinsHistogram.csv', 'w') as f:
        f.write(header)
        for i, im in enumerate(images):
           data = get_data(im)
           path = names[i]
           last_slash = path.rfind('/')
           name = path[last_slash+1:]
           f.write(name +',' + im.mode + ',' + data + ',')
           h_r, h_g, h_b = get_histograms(im)
           f.write(get_histogram_data(h_r, h_g, h_b) + '\n')
           f.write(','.join(str(i) for i in h_r) + '\n')
           f.write(','.join(str(i) for i in h_g) + '\n')
           f.write(','.join(str(i) for i in h_b) + '\n')

`

這是我得到的錯誤的結尾

raise ValueError("unknown url type: %r" % self.full_url)
ValueError:unknown url type: 'h'

有什么想法嗎?

您的問題在這里:

urls = ('http://3.bp.blogspot.com/-SC-w7eTgpM0/URE9NsI_nuI/AAAAAAAAAGE/YmlWnimNuPM/s1600/7957178556_001939ffc5_z.jpg')
for addr in urls:

您打算將urls定義為元組,但實際上它是單個字符串。 由於括號不包含任何逗號,因此Python將其視為要評估的單個表達式,因為(2 + 2)為4,而不是包含4的元組。字符串是可迭代的並產生其組成字符,因此addr是每個字符串中的字符。 因此,您嘗試打開h ,然后打開t ,然后打開t ,依此類推。 否則,如果嘗試打開h並沒有給您錯誤,則可能會。

解決方案是使用逗號結尾的urls ,以確保Python將其視為元組,或者僅使用方括號並將其制成列表。 或者,當然,可以使用多個項目。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM