2015-12-28 83 views
1

我想解析一些網站,並且遇到了使用xpath查找元素的問題。通過標記中的文本查找元素

您是否知道如果您想在xpath中指定的文本不是英文但可能存在問題在俄羅斯?

比方說,我想通過這樣的XPath

//*input[@value="text in Russian"] 

我需要的東西進行解碼或者它應該工作,我需要解決的另一個問題找?

更新

它不工作,即使有明確的聲明像

'//*input[@value="%s"]' % u'text in Russian' 

我將繼續尋找其他原因。

THX所有

+0

相關:http://stackoverflow.com/questions/4180987/how-to -solve-problem-with-parsing-html-file-with-cyrillic-symbol –

回答

0

所以,我的問題不是解碼,而是指定元素的完整xpath。

我發現,對於具有複雜結構的頁面,部分xpath工作不太好,並不總是如此。

在我的情況是這樣的:

//form[@id="basket-form"]/div/div[@class="content-top-secondary-section"]/div/div/div[@data-id="price-summary"]/div/div/input[@value="text in Russian"] 

這一翻譯的最後部分的初始簡單聲明

//input[@value="text in Russian"] 
0

它不應該是一個問題,它不應該在Python解碼3.

工作實例只是工作 - 測試與Python 3.4.3 3.5.1

from lxml import html 

html_content = '<div anything="который">text inside div</div>' 

doc = html.fromstring(html_content) 

tree = doc.xpath('//div[@anything="который"]') 

print(tree[0].text) 

輸出:

text inside div 
+0

然後我還有其他一些問題。出於某些原因,我無法按這個按鈕 – paveltr

相關問題