質問: root2.xpath('//*[@id="bd"]/div[1]/table/tr[17]/td[13]/text()') print t1 ``` ### 試したこと >>print t1.encode('utf_8') Traceback (most recent call last): File "", line 1, in AttributeError: 'list' object has no attribute 'encode' ### 補足情報(言語/FW/ツール等のバージョンなど) CentOS release 6.7 Python 2.6.6 lxml
回答: > > (1) > > > xpathで得られる結果は基本的にlist型なので、`t1[0]`などのように対象となるものを個別指定しないと、「試したこと」にあるようなデコードなどが効きません。 `print t1[0]`としてみてください。 > > (2) > > > curlなどのコマンドラインで該当のURLを実行してみた感じでは、少なくともHTMLのレスポンス自体にはtbodyはタグは存在しませんでした。 jsによる書き換えかChromeが補完してしまったのだと思います。 ので、今回の場合では掲載されたコードの通りのxpathで問題ないかと思います。