from lxml import etree 显红报错,提示找不到模块的原因与解决方法

由于今天用Pyhton做爬虫的时候,需要用上xpath,我已经用pip安装了lxml模块,结果引入的时候,显红报错,如下图:

from lxml import etree

 

我的环境:pyhton3.7.0 + lxml -4.4.1

编辑器:PyCharm;

pyhton3.7.0 + lxml -4.4.1

 

解决方法

原因其实也很简单,这是因为在python3.5之后的 lxm 模块l中不能再直接引入etree模块,虽然新版本无法直接”from lxml import etree“这样,但是,它只不过是换了一个办法引出 etree而已,具体如下:

import requests
from lxml import html

etree = html.etree

url = "https://movie.douban.com/cinema/nowplaying/chengdu/"
resp = requests.get(url).text
#print(resp)

lists = etree.HTML(resp)
cl = lists.xpath("//ul[@class='lists']")[0]
li = cl.xpath("./li")

for lis in li:
    movie_name= lis.xpath("@data-title")[0]
    movie_rep = lis.xpath("@data-score")[0]
    movie_time = lis.xpath("@data-duration")[0]
    print(movie_name + "-" + movie_rep + "-" + movie_time)

关于这里的xpath用法,我就不多说了,大家可以自行网上搜索!

 

总结:

以上这种方式就是Pyhton新版本中 lxml模块 中etree的使用方法,不过使用过程中发现有一些方法无法直接自动匹配提示,对新手入门不是很友好。

当然,你也可以直接更换低版本的Pyhton是可以直接解决这个问题的。

    A+
发布日期:2019年09月09日 14:52:24  所属分类:Python
最后更新时间:2019-09-09 14:56:51
评分: (1 票;平均数5.00 ;最高评分 5 ;用户总数1;总得分 5;百分比100.00)
付杰
服务器管理面板/主机控制面板“安装”服务
服务器管理面板/主机控制面板“安装”服务
  • ¥ 9.9元
  • 市场价:49.9元
wp discux 帝国 dedecms phpcms等快速建站
wp discux 帝国 dedecms phpcms等快速建站
  • ¥ 99.9元
  • 市场价:499.9元
免费SSL证书服务 HTTPS申请 安装 配置 支持通配符*
免费SSL证书服务 HTTPS申请 安装 配置 支持通配符*
  • ¥ 199.9元
  • 市场价:20000元
PHP运行环境 wamp lamp lnmp 安装 配置 搭建服务
PHP运行环境 wamp lamp lnmp 安装 配置 搭建服务
  • ¥ 9.9元
  • 市场价:49.9元

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: