5分钟,6行代码教你写爬虫!(python)[通俗易懂]

5分钟,6行代码教你写爬虫!(python)[通俗易懂]5分钟,6行代码教你写会爬虫!适用人士:对数据量需求不大,简单的从网站上爬些数据。好,不浪费时间了,开始!先来个例子:输入以下代码(共6行)importrequestsfromlxmlimporthtmlurl=’https://movie.douban.com/’#需要爬数据的网址page=requests.Session().get(url)tree=html.f

大家好,又见面了,我是你们的朋友全栈君。

节约时间,不废话介绍了,直接上例子!!!输入以下代码(共6行)

import requests
from lxml import html
url='https://movie.douban.com/' #需要爬数据的网址
page=requests.Session().get(url) 
tree=html.fromstring(page.text) 
result=tree.xpath('//td[@class="title"]//a/text()') #获取需要的数据

我们来看下获取的数据

print(result)

['看不见的客人',
 '斯隆女士',
 '美女与野兽',
 '契克',
 '分裂',
 '莎士比亚外传',
 '八月',
 '休斯顿,我们有麻烦了!',
 '古城一线牵',
 '被操纵的城市']

爬虫结束~~~有木有满满成就感!!!
以上代码爬取的是这个页面,红色框框里面的数据,也就是豆瓣电影本周口碑榜。
豆瓣电影
下面开始简单介绍如何写爬虫。
爬虫前,我们首先简单明确两点:
1. 爬虫的网址;
2. 需要爬取的内容(数据)。

第一步,爬虫的网址,这个…那就豆瓣吧,我也不知道为啥爬虫教程都要拿豆瓣开刀–!
第二部,需要爬取的内容(数据)。
这也正是上面6行代码中的最后一行,也可能是新手觉得最难的地方了。代码的这个部分就是获取数据。

'//td[@class="title"]//a/text()'

下面来一步一步操作如何写出上面的那行代码
1. 打开网址https://movie.douban.com/,然后按一下F12。
2. 鼠标点击图中的按钮。
这里写图片描述

  1. 鼠标点击需要爬取的数据,这里我们点“看不见的客人”,如图所示。
    这里写图片描述
  2. 看到大红色框框里的东西,是不是和我们最“重要”的代码有很多相似的地方。
    再看来最后一行代码中最“重要”的部分。
    ‘//td[@class=”title”]//a/text()’
    • //td :这个相当于指定是大目录;
    • [@class=”title”]:这个相当于指定的小目录;
    • //a :这个相当于最小的目录;
    • /text():这个是提取其中的数据。

爬虫介绍结束,看完你也该试试手了。
试试爬“即将上映”
这里写图片描述

这个只需将最后一行代码改成

result=tree.xpath('//li[@class="title"]//a/text()')

如图所示“即将上映”的电影就被你爬下来了。

是不是感觉爬虫很简单,已经会了。
现实中,在爬虫乎面临很多问题,比如:
1. 页面规则不统一;
2. 爬下来的数据处理;
3. 反爬虫机制。
还有很多类似的各种问题,想要深入变成大神,还是需要一步一步来,5分钟变大神是不可能啦~~!
上面6行代码包括的内容有python requests包,html知识,XPATH等。网上资料很多,这里就不做介绍了。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/133881.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 初学css list-style属性「建议收藏」

    初学css list-style属性「建议收藏」网上很多css布局中会看到这样的一句:list-style:none;那么list-style到底什么意思?中文即:列表样式:无;其实它是一个简写属性,包含了所有列表属性,具体包含list-sty

    2022年8月5日
    10
  • 安卓内核编程_内核编程用什么语言

    安卓内核编程_内核编程用什么语言http://blog.csdn.net/Luoshengyang/article/details/6568411Android4.04源码编译(ubuntu12.04)http://www.adaiw.com/?p=167如何下载并编译Android4.0内核源码goldfish(图文)http://blog.csdn.net/flydream

    2022年10月8日
    3
  • MutationObserver 方法

    MutationObserver 方法MutationObserver是什么MutationObserverAPI让我们能监听DOM树变化,该API设计用来替换掉在DOM3事件规范中引入的Mutationevents。Mutationevents是同步触发的,每次变动都会触发一次调用。MutationObserverAPI是异步触发的,DOM的变动并不会马上触发,而是要等到当前所有DOM操作都结束才触发。所以MutationObserver相比Mutationevents性能要更高。代码

    2025年6月10日
    2
  • C语言小游戏——贪吃蛇—-小白专用

    C语言小游戏——贪吃蛇—-小白专用C语言贪吃蛇小游戏个人小白,后期也做了一些改进,附原视频地址(点击即可)废话在后面直接上程序该程序在VS2019上可完美运行。#include<stdio.h>#include<stdlib.h>#include<Windows.h>#include<time.h>#include<conio.h>constexprautomaphigh=28,mapwide=84;structvirus{ intx;

    2022年5月12日
    45
  • 捷达vs7与VS5是一个平台打造_visual studio没有控制台应用程序

    捷达vs7与VS5是一个平台打造_visual studio没有控制台应用程序我正在使用VisualStudioTeamServices(是VSOnline)。我从VisualStudio2013升级到了VisualStudio2015。当我打开源代码管理项目时,出现以下错误:您已加载的解决方案已绑定到https://xx.visualstudio.com/defaultcollection上的源控制服务器,但该服务器上没有任何工作空间可以找到服务器。如果您确…

    2022年8月12日
    8

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号