写一个小型的爬虫懒得用scrapy(主要是scrapy不太好装…),直接使用了requests请求,但是要解析数据,那么问题来了


问题1:

  • 使用的是python3.7的环境,解析数据要用xpath,系统是mac
1
pip install lxml

一分钟后。。。下载成功

  • 开始写代码,
1
from lxml import etree

挂了…,lxml中竟然没有etree模块

  • 换个方法
1
2
from lxml import html
et = html.etree

依然挂了…


解决:

  • 开始找解决办法
    百度中。。。,找了一堆的方法,全部失败
    google中。。。,又找了一堆的方法,全部失败
    即将放弃,准备切换python版本,开始水群。。。,群里大佬给了个阿里源的地址,恍然大悟!!!
1
pip install -i https://mirrors.aliyun.com/pypi/simple/ lxml
1
2
3
from lxml import html
et = html.etree
print(et.HTML(response.content))

终于突破了这个问题


问题2:

  • 解析过后发现有些需要整个代码块转为字符串
1
2
import xml.etree.ElementTree as ET
print(ET.tostring(dom代码块, encoding='utf8'))
  • 数据是有了,但是不太对,中文出来的是十六进制的数据,没法继续了啊
    百度/Google,我又来了。。。

解决:

1
print(str(ET.tostring(dom代码块, encoding='utf8'), 'utf-8'))