python - Scrapy中xpath用到中文報(bào)錯(cuò)
問(wèn)題描述
問(wèn)題描述links = sel.xpath(’//i[contains(@title,'置頂')]/following-sibling::a/@href’).extract()
報(bào)錯(cuò):ValueError: All strings must be XML compatible: Unicode or ASCII, no NULL bytes or control characters
問(wèn)題解答
回答1:參見(jiàn)文章:解決Scrapy中xpath用到中文報(bào)錯(cuò)問(wèn)題
解決方法方法一:將整個(gè)xpath語(yǔ)句轉(zhuǎn)成Unicode
links = sel.xpath(u’//i[contains(@title,'置頂')]/following-sibling::a/@href’).extract()
方法二:xpath語(yǔ)句用已轉(zhuǎn)成Unicode的title變量
title = u'置頂'links = sel.xpath(’//i[contains(@title,'%s')]/following-sibling::a/@href’ %(title)).extract()
方法三:直接用xpath中變量語(yǔ)法($符號(hào)加變量名)$title, 傳參title即可
links = sel.xpath(’//i[contains(@title,$title)]/following-sibling::a/@href’,).extract()回答2:
整個(gè)字符串前加個(gè)u試試
相關(guān)文章:
1. mysql - 表名稱前綴到底有啥用?2. 怎么php怎么通過(guò)數(shù)組顯示sql查詢結(jié)果呢,查詢結(jié)果有多條,如圖。3. 在mybatis使用mysql的ON DUPLICATE KEY UPDATE語(yǔ)法實(shí)現(xiàn)存在即更新應(yīng)該使用哪個(gè)標(biāo)簽?4. mysql - 數(shù)據(jù)庫(kù)表中,兩個(gè)表互為外鍵參考如何解決5. 為什么php修改數(shù)據(jù)無(wú)法同步到數(shù)據(jù)庫(kù),只是當(dāng)前頁(yè)面修改成功?6. 編輯成功不顯示彈窗7. sublime可以用其他編譯器替換嗎?8. tp 6.0 數(shù)據(jù)查詢,求教!9. sql語(yǔ)句 - 如何在mysql中批量添加用戶?10. 哭遼 求大佬解答 控制器的join方法怎么轉(zhuǎn)模型方法
