天天看點

from lxml import etree報錯

寫一個小型的爬蟲懶得用scrapy(主要是scrapy不太好裝...),直接使用了requests請求,但是要解析資料,那麼問題來了

問題1:

  • 使用的是python3.7的環境,解析資料要用xpath,系統是mac
    pip install lxml           
    一分鐘後。。。下載下傳成功
  • 開始寫代碼,
    from lxml import etree           
    挂了...,lxml中竟然沒有etree子產品
  • 換個方法
    from lxml import html
    et = html.etree           
    依然挂了...

解決:

  • 開始找解決辦法

    百度中。。。,找了一堆的方法,全部失敗

    google中。。。,又找了一堆的方法,全部失敗

    即将放棄,準備切換python版本,開始水群。。。,群裡大佬給了個

    阿裡源 的位址,恍然大悟!!!
    pip install -i https://mirrors.aliyun.com/pypi/simple/ lxml 
    -----------
    
    from lxml import html
    et = html.etree
    print(et.HTML(response.content))           
    終于突破了這個問題

問題2:

  • 解析過後發現有些需要整個代碼塊轉為字元串
    import xml.etree.ElementTree as ET
    print(ET.tostring(dom代碼塊, encoding='utf8'))           
  • 資料是有了,但是不太對,中文出來的是十六進制的資料,沒法繼續了啊

    百度/Google,我又來了。。。

print(str(ET.tostring(dom代碼塊, encoding='utf8'), 'utf-8'))           

參考連結:

時光不寫部落格