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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • adb命令 利用jks文件给apk签名[通俗易懂]

    adb命令 利用jks文件给apk签名[通俗易懂]程序猿日常实践是检验真理的唯一标准。jarsigner-verbose-keystorexxx.jks-signedjarxxx.apk(签名后的apk名字)xxx.apk(需要签名的apk)xxx(keystore别名)

    2022年5月30日
    35
  • Thinkphp+Nginx(PHPstudy)下报的404错误,403错误解决

    Thinkphp+Nginx(PHPstudy)下报的404错误,403错误解决

    2021年10月12日
    57
  • matlab画折线图

    matlab画折线图p=‘plot_scale.xlsx’;a=xlsread§;x=a(1,:);%x轴上的数据,第一个值代表数据开始,第二个值代表间隔,第三个值代表终止susan=a(2,:);%a数据y值HarrisLaplace=a(3,:);MSCP=a(4,:);CPDA=a(5,:);HeYung=a(6,:);FastCPDA=a(7,:);DOG=a(8,:);GCM=a(9,:);ANDD=a(10,:);MSRJ=a(11,:);ZhangSun=a(12,:);WEAE=a(

    2022年6月12日
    60
  • Pycharm 安装插件[通俗易懂]

    Pycharm 安装插件[通俗易懂]Pycharm安装插件Pycharm安装插件Pycharm中一些值得安装的插件RainbowBracketsIdeaVimMarkdownNavigatorTranslation如果说编辑器是程序员的武器,那么插件就是装备加成。插件可以让编写代码更加灵活Pycharm安装插件点击file–settings,进入设置找到apperance中的Plugins,在搜索框中搜索想要的插件,然后点击安装即可Pycharm中一些值得安装的插件RainbowBrack

    2022年8月29日
    7
  • git clone与git pull区别

    git clone与git pull区别原地址最近一直焦虑换工作与面试,自然面试过程中也被问到了很多问题,在一家公司中,被问到了git相关的知识。面试官提出了gitclone与gitpull有什么区别。由于自己对git的掌握情况不是特别深入,感觉瞬间被问蒙圈一样。后来,查了相关的文档,看了一些文章,自己有了一丁点的理解,觉得应该…

    2022年7月21日
    16
  • Intellij IDEA创建Maven Web项目

    Intellij IDEA创建Maven Web项目

    2021年12月5日
    63

发表回复

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

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