webdriver 获取佰词斩的单词(涉及字符串转换)

时间:2025-04-28 23:06:01
from selenium import webdriver

def finds(da):
d = da.split(',"') t = {}
for i in (d[1], d[2], d[3]):
tem = i.split('":')
t[tem[0].replace('"', '').strip()] = tem[1].replace('"', '').strip() return t dr = webdriver.Ie()
url = u'http://www.baicizhan.com/poster/1'
try:
dr.get(url) al = dr.find_elements_by_tag_name('li')
f = open(u'c:/word.txt', 'w') for i in al:
t = finds(i.get_attribute('data')) for e in ('word', 'accent', 'mean'):
f.write(e+': '+eval('u\"' + t[e] + '\"').strip().encode('utf8') + '\t\t')
f.write('\n') f.close()
finally:
dr.quit()

  

获取佰词斩页面的单词及词义

1. t[tem[0].replace('"', '').strip()] = tem[1].replace('"', '').strip()   # 橙色获取的是ascii 字符串 "adj. \u52aa\u529b\u5de5\u4f5c\u7684\uff1b\u4e0d\u8f9e\u8f9b\u52b3\u7684\uff0c\u82e6\u5e72\u7684\nv."

2. eval('u\"' + t[e] + '\"').strip().encode('utf8')    #eval 把ascii字符串转换为unicode类型

or  t[e].decode('unicode-escape').encode('utf8')

要是能用urllib , 速度会快很多