【Python爬虫】用CSS 选择器提取网页数据

使用 pip 安装 requests_html 库

 pip install requests_html

根据你的网络情况,通常需要几分钟时间。

在你的电脑任意位置,新建一个 crawler.py 文件。输入并执行以下 4 行代码:

from requests_html import HTMLSession
session = HTMLSession()
r = session.get('https://movie.douban.com/subject/1292052/')
print(r.text)

运行

你将会看到如下输出:

<!DOCTYPE html>
<html lang="zh-cmn-Hans" class="ua-mac ua-webkit">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <meta name="renderer" content="webkit">
    <meta name="referrer" content="always">
    <meta name="google-site-verification" content="" />
    <title>
        肖申克的救赎 (豆瓣)
</title>

... 以下省略 3000 行

提取网页中所需内容

你将使用强大的 CSS 选择器 来提取网页中有价值的信息。

CSS 选择器可以从结构化的网页中选择一个特定的元素。

大多数浏览器都提供了获得页面上特定元素 CSS 选择器的功能。

先查看一段内容的代码,在代码上点击右键,选择 Copy -> Copy Selector (或者 Copy CSS Selector、复制 CSS 选择器),就能将这段内容对应的 CSS 选择器复制到剪贴板。

现在你需要访问 这个 页面。按照上面的介绍,把电影名称对应的选择器复制上

回到之前创建的 crawler.py 文件,使用 Python 和 CSS 选择器来提取网页内容。

from requests_html import HTMLSession
session = HTMLSession()
r = session.get('https://movie.douban.com/subject/1292052/')
title = r.html.find('用你的选择器替换这里的内容', first=True)
# r.html.find() 接受一个 CSS 选择器(字符串形式)作为参数
# 返回在网页中使用该选择器选中的内容。

print(title.text)

运行看看,你是否把电影名称从网页中提取出来了呢?如果成功了,试试提取其它你感兴趣的内容吧!

 

  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值