我有一個開頭有空格的 URL。在將它傳遞給urllib.request.urlretrieve之前,我必須將其洗掉。
pdflink = '? https://www.doj.nh.gov/consumer/security-breaches/documents/a2z-field-services-20201218.pdf'
但是,我無法洗掉它。
到目前為止我嘗試過的:
pdflink.lstrip(): 不作業,我不知道為什么?pdflink.replace(' ', ''): 不作業
知道如何洗掉它嗎?
我的最終代碼:
import openpyxl
wb = openpyxl.load_workbook('Data.xlsx')
ws = wb['Final']
pdflink = (ws.cell(row=4487,column=4).value).lstrip()
# pdflink will have value as shown below:
#pdflink = '? https://www.doj.nh.gov/consumer/security-breaches/documents/a2z-field-services-20201218.pdf'
try:
urllib.request.urlretrieve(pdflink, 'test')
return True
except FileNotFoundError:
print(filename ' Not present')
return False
運行上面的代碼將拋出錯誤為: URLError: urlopen error unknown url type: https
錯誤的根本原因:URL 開頭有額外的空格。
uj5u.com熱心網友回復:
這不僅僅是一個空間。您有一些非列印特殊字符作為第一個字符。我不知道是哪一個,但是當我從你的帖子中剪切和粘貼時,我得到了一個額外的字符。你可以試著print(ord(pdflink[0]))看看它是什么。您可能需要使用pdflink = pdflink[2:]它來清理它。或者,搜索http:
i = pdflink.find('http')
pdflink = pdflink[i:]
uj5u.com熱心網友回復:
FEFF在空格之前的鏈接中實際上有一個 unicode 字符。你看不到它,但它正在打破你的lstrip
你可以在這里看到
我建議使用 pdflink.split(' ')[-1]
uj5u.com熱心網友回復:
字串開頭可能有一些奇怪的字符 - 我會嘗試使用指定的encoding="UTF-8".
我還使用pdflink.lstrip("? ")引號內的哪里解決了這個問題,我從原始字串中復制粘貼了那個非空格的東西
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/386247.html
