Python爬取豆瓣电影数据并且提取值xpath和lxml模块的代码讲解

  • 更新时间:2020-06-17 09:35:35
  • 编辑:晏如仪

本篇文章给大家带来的内容是关于Python爬取豆瓣电影数据并且提取值xpath和lxml模块(代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

工具:Python 3.6.5、PyCharm开发工具、Windows 10 操作系统、谷歌浏览器

目的:爬取豆瓣电影排行榜中电影的title、链接地址、图片、评价人数、评分等

网址:https://movie.douban.com/chart

语法要点:

xpath语法:

谷歌浏览器安装 xpath helper插件:帮助我们从elements中定位数据

1、选择节点(标签)

  (1)、/html/head/meta:能够选中html下的所有的meta标签

  (2)、//li:当前页面上的所有的li标签

  (3)、/html/head//link:head下的所有link标签

2、//:能够从任意节点开始选择

  (1)、//li:当前页面上的所有的li标签

  (2)、/html/head//link:head下的所有的link标签

3、@符号的用途

  (1)、选择具体某个元素://p[@class='feed']/ul/li,选择class='feed'的p下的ul下的li

  (2)、a/@href:选择a的href的值

4、获取文本

  (1)、/a/text():获取a下的文本

  (2)、/a//text():获取a下的所有文本

示例

Python爬取豆瓣电影数据并且提取值xpath和lxml模块(代码)

lxml语法:

1、安装:pip install lxml

2、使用

  from lxml import etree

  element = etree.HTML("html字符串")

  element.xpath("")

代码:

 

from lxml import etree
import requests

url = "https://movie.douban.com/chart"

headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.81 Safari/537.36"
}
response = requests.get(url,headers=headers)
html_str = response.content.decode()

#print(html_str)

html = etree.HTML(html_str)
print(html)

#1.获取所有的电影的URL地址
#url_list = html.xpath("//div[@class='indent']/div/table//div[@class='pl2']/a/@href")
#print(url_list)

#2.所有图片的地址
#img_list = html.xpath("//div[@class='indent']/div/table//a[@class='nbg']/img/@src")
#print(img_list)
ret1 = html.xpath("//div[@class='indent']/div/table")
print(ret1)
for table in ret1:
    item = {}
    item["title"] = table.xpath(".//div[@class='pl2']/a/text()")[0].replace("/","").strip()
    item["href"] = table.xpath(".//div[@class='pl2']/a/@href")[0]
    item["img"] = table.xpath(".//a[@class='nbg']/img/@src")[0]
    item["comment_num"] = table.xpath(".//span[@class='pl']/text()")[0]
    item["rating_num"] = table.xpath(".//span[@class='rating_nums']/text()")[0]
    print(item)

 

运行效果:

Python爬取豆瓣电影数据并且提取值xpath和lxml模块(代码)

以上就是Python爬取豆瓣电影数据并且提取值xpath和lxml模块(代码)的详细内容,更多请关注码农之家其它相关文章!

相关教程

  • Python中hashlib模块的使用

    这篇文章主要介绍了Python hashlib模块用法,结合实例形式分析了Python使用hash模块进行md5、sha1、sha224、sha256、sha512等加密运算相关操作技巧与注意事项,需要的朋友可以参考下

    发布时间:2020-02-29

  • Python3.5 Pandas模块中Series用法详解

    这篇文章主要介绍了Python3.5 Pandas模块之Series用法,结合实例形式分析了Python3.5中Pandas模块的Series结构原理、创建、获取、运算等相关操作技巧与注意事项,需要的朋友可以参考下

    发布时间:2019-06-15

  • Win10中python3.7安装dlib模块的技巧和坑

    这篇文章主要介绍了Win10环境python3.7安装dlib模块趟过的坑,本文图文并茂给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下

    发布时间:2020-01-30

  • 解析Python怎么用time模块实现指定时间触发器

    这篇文章主要介绍了Python使用time模块实现指定时间触发器,结合实例形式分析了Python时间相关模块与方法使用技巧,需要的朋友可以参考下

    发布时间:2020-01-16

  • Python中os模块的实例讲解

    ​本篇文章给大家带来的内容是关于Python中os模块的详细介绍(附代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

    发布时间:2019-10-29

  • Python OS模块实例用法

    这篇文章主要介绍了Python OS模块,结合实例形式总结分析了Python使用OS解析文件路径、判断文件、目录等相关操作技巧,需要的朋友可以参考下

    发布时间:2019-06-23

  • python使用fcntl模块实现程序加锁的方法

    这篇文章主要介绍了python使用fcntl模块实现程序加锁功能,较为详细的分析了fcntl模块的具体功能并结合实例形式给出了Python实现程序加锁的操作技巧,需要的朋友可以参考下

    发布时间:2020-04-13

  • 详解python爬虫 urllib模块发起post请求

    这篇文章主要介绍了python爬虫 urllib模块发起post请求过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

    发布时间:2020-01-28

  • Python设计模式(第2版)

    Python设计模式(第2版)

    这本书全面揭示有关设计模式的内容,并结合Python语言进行示例化的解析,适合那些关注软件设计原则,并想将you秀的设计模式应用到Python编程当中的读者阅读

    大小:21.9 MBPython电子书

  • Python数据分析入门:从数据获取到可视化

    Python数据分析入门:从数据获取到可视化

    它是1本实干之作,集中体现数据统计分析步骤的各类阶段,包括统计数据的收集、清理和探索性剖析,并根据大伙儿耳熟能说的Python小工具多方面实际操作。 这书做为数据统计分析的新手入门

    大小:5.4 MBPython电子书

  • Python黑客攻防入门

    Python黑客攻防入门

    本书讲述了Python黑客攻防的基础知识、各种黑客攻击技术、黑客攻击学习方法,介绍各种黑客攻击技术、计算机基础知识、应用程序黑客攻击、Web黑客攻击、网络黑客攻击等

    大小:63.1 MB黑客技术电子书

  • Python全栈数据工程师养成攻略(视频)

    Python全栈数据工程师养成攻略(视频)

    本书介绍了数据工程和Python语法,随后讲解如何获取和存储数据,并实现简单的静态可视化,帮助读者将学习到关于Web建站的一些基础和进阶知识

    大小:129.7 MBPython全栈电子书

  • Python即学即用

    Python即学即用

    本书采用了即学即用的方式讲解Python,包含Python语言知识及大数据使用的numpy、pandas、pytables;Web编程框架web.py、操作postgresql数据库等,特别适合软件开发人员和数据分析工程师阅读

    大小:99 MBPython编程电子书

  • Python编程无师自通

    Python编程无师自通

    Python编程无师自通 专业程序员的养成 零基础自学Python3入门教程 Python基础教程

    大小:122.4 MBPython编程电子书

用户留言