[英]Converting WebDriver.current_url into string in python
我目前正在尝试将网页 url 转换为字符串,以便将其放入 html 格式
for x in range(3):
wDriver.get('https://www.example.com/')
sTitle = wDriver.find_element_by_xpath('/html[1]/body[1]/div[1]/main[1]/div[4]/div[1]/div[1]/div[1]/div[1]/div['+str(i)+']/div[1]/div[1]/h2[1]/a[1]')
sTitle.click()
link = wDriver.current_url
sHeader = wDriver.find_element_by_class_name('c-page-title')
print(sHeader.text + ' ' + link)
i=i+1
newLink = str(link)
time.sleep(2)
sReturn = sReturn + '<p><a href="'+newLink+'">'+sHeader+'</a></p>'
我得到的错误代码是
"TypeError: can only concatenate str (not "WebElement") to str"
link = wDriver.current_url
current_url 返回一个字符串,所以链接已经是一个字符串。 您不需要再次显式转换为字符串。
您收到此异常的原因
"TypeError: can only concatenate str (not "WebElement") to str"
是因为当你看这里
sReturn = sReturn + '<p><a href="'+newLink+'">'+sHeader+'</a></p>'
newLink 是一个字符串,所以没有问题,但sHeader
是一个网络元素。 这就是导致问题的原因。
请使用.text
提取文本:
sReturn = sReturn + '<p><a href="'+newLink+'">'+sHeader.text+'</a></p>'
或者如果出于任何原因您希望将其存储在变量中,请使用:
sHeader = wDriver.find_element_by_class_name('c-page-title').text
sReturn = sReturn + '<p><a href="'+newLink+'">'+sHeader+'</a></p>'
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.