我正在尝试使用以下代码抓取波斯网站:
import urlparse, urllib
parts = urlparse.urlsplit(u'http://fa.wikipedia.org/wiki/صفحهٔ_اصلی')
parts = parts._replace(path=urllib.quote(parts.path.encode('utf8')))
encoded_url = parts.geturl().encode('ascii')
'https://fa.wikipedia.org/wiki/%D8%B5%D9%81%D8%AD%D9%87%D9%94_%D8%A7%D8%B5%D9%84%DB%8C'
我在运行搜寻器时在提示符下收到此错误消息:
ModuleNotFoundError:没有名为urlparse的模块
并且在VS Code中,有三个带下划线的单词。当我单击它们时,将显示以下错误消息:
我的代码有什么问题?
import urllib.parse
parts = urllib.parse.urlsplit(u'http://fa.wikipedia.org/wiki/صفحهٔ_اصلی')
parts = parts._replace(path=urllib.parse.quote(parts.path.encode('utf8')))
encoded_url = parts.geturl().encode('ascii')
'https://fa.wikipedia.org/wiki/%D8%B5%D9%81%D8%AD%D9%87%D9%94_%D8%A7%D8%B5%D9%84%DB%8C'
print(encoded_url)
此代码在python 3. *环境中运行,因为urlparse库已被urllib.parse取代