1

set我需要在dryscrape 方法中使用 utf-8 字符。但运行后显示此错误:

UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-4: ordinal not in range(128)

我的代码(例如):

site = dryscrape.Session()
site.visit("https://www.website.com")
search = site.at_xpath('//*[@name="search"]')
search.set(u'فارسی')
search.form().submit()

u'فارسی'更改为search.set(unicode('فارسی', 'utf-8')),但显示此错误。

4

1 回答 1

0

它非常简单......这种方法与谷歌完美配合。如果您知道 url 婴儿车,也可以尝试其他任何方式

import dryscrape as d
d.start_xvfb()
br = d.Session()
import urllib.parse
query = urllib.parse.quote("فارسی")
print(query)  #it prints : '%D9%81%D8%A7%D8%B1%D8%B3%DB%8C'
Url = "http://google.com/search?q="+query
br.visit(Url)
print(br.xpath('//title')[0].text())
#it prints : Google Search - فارسی
#You can also check it with br.render("url_screenshot.png")
于 2019-08-26T11:29:28.923 回答