当前位置: 首页 > news >正文

长寿网站建设昆明网站seo优化

长寿网站建设,昆明网站seo优化,设计师建站网站,用easyui 做的网站python爬虫1:基础知识 前言 ​ python实现网络爬虫非常简单,只需要掌握一定的基础知识和一定的库使用技巧即可。本系列目标旨在梳理相关知识点,方便以后复习。 目录结构 文章目录 python爬虫1:基础知识1. 基础认知1.1 什么是爬虫&…

python爬虫1:基础知识

前言

​ python实现网络爬虫非常简单,只需要掌握一定的基础知识和一定的库使用技巧即可。本系列目标旨在梳理相关知识点,方便以后复习。

目录结构

文章目录

    • python爬虫1:基础知识
      • 1. 基础认知
        • 1.1 什么是爬虫?
        • 1.2 爬虫可以做什么?
        • 1.3 爬虫的主要流程
        • 1.4 爬虫需要学习什么?
      • 2. 网页相关知识
        • 2.1 html基础知识
        • 2.2 静态网页与动态网页
        • 2.3 常见的网页请求模式
      • 3. 其他基础知识
        • 3.1 数据库
        • 3.2 代理
      • 4. 总结

1. 基础认知

1.1 什么是爬虫?

​ 这里的爬虫,一般指的是网络爬虫,即可以自动去网络上爬取我们所需的内容的脚本程序,当然这里的自动其实是说你已经写好了程序。

1.2 爬虫可以做什么?

​ 爬虫有一句很关键的话:所见即所得。意思是你自己能在网上看见的,就是可以爬取的内容。这里需要说明一下:一个网站,你是普通用户,那么你写的爬虫也是用你自己普通用户的身份,那么只能爬取普通用户可以看见的内容,那些vip用户的内容你无法爬取(如果想要爬取,要么换一个用户账号,要么嘿嘿嘿)

在这里插入图片描述

1.3 爬虫的主要流程

​ 主要流程如下:

1. 确定目标:确定要爬取的网页/网站
2. 请求网页以获取网页源码
3. 解析网页源码以获取所需的内容
4. 将获取的内容保存到我们的本地

1.4 爬虫需要学习什么?

​ 如果你只是学来玩(我也是菜鸡),那么可以学习的内容其实不是很多,主要为:

  • 前端的基础知识(主要了解html、简单了解css和js)
  • 代理、ip池构建等基础知识也需要知道
  • python基础知识(这个肯定必须会)
  • requests请求库
  • lxml、bs4、pyquery、re解析库(一般会其中一两个即可,反正目的是相同的)
  • selenium库(动态处理必须会)
  • 数据库基础,会点简单的MySQL数据库基础就行了,不需要多深入(其实大部分时候用不到)
  • scrapy这个爬虫框架看自己需求

​ 嗯,学的东西不多,只有亿点点。

在这里插入图片描述
在这里插入图片描述

2. 网页相关知识

2.1 html基础知识

​ 这里简单说明一下html的基础知识,主要是方便看后面教程时大家都懂。

​ 首先,随便打开一个网页,鼠标右键,选择”查看源码“,你就可以html代码了:

在这里插入图片描述

​ 可以发现一个最简单的事实:html代码都是类似于<xxx>xxxx</xxxx>这样的形式,我们将它称之为标签,其可以分为两类:双标签或者单标签。双标签就是上图中那种,同一个名字会出现两次形成闭合,单标签自然只出现一次。

标签里面的字母自然具有其特殊意义。这里我肯定不会列完,只列几个最为重要的标签,也是爬虫时用到最多的标签:

  • a标签:超链接标签,即我们网页看到那种可以点击跳转的东东几乎都是a标签
    • 它有一个重要属性,名为href,其包好的值就是跳转的链接

在这里插入图片描述

  • img标签:图像标签,即我们网页上看到的那些图片几乎都是img标签
    • 它也有一个重要属性,即src,其包含了图片的下载地址

在这里插入图片描述

​ **其实,我们爬虫,爬取的就是网页中这些具有关键信息的代码内容,然后再去利用这些去获取所需。**比如我们获取图片,其实不是真的直接就把图片下载下来,而是先获取网页源码,接着获取图片链接,最后再去下载图片。

2.2 静态网页与动态网页

​ 现在网页常见的有两类:

  • 静态网页
    • 即我们打开网页,它直接就加载完了的,不会说你滚轮往下滚,会不停加载内容
    • 这类网页爬取较为简单,只要你能绕过反爬虫机制就可以了
  • 动态网页
    • 即我们打开网页,内容只加载了部分,你往下滑动,内容会不停更新,常见的网站比如百度图片之类的
    • 这类网页爬取比较困难,绕过反爬虫机制只是必须的一步,还需要进行动态处理

2.3 常见的网页请求模式

​ 最常见的两种请求方式:

  • GET请求

    • 比如你搜索某个东西都是GET请求

    • 其一般带有参数,比如百度搜索,你随便搜索一个,看看上面的网页链接,你会发现:在这里插入图片描述

    • 这时候,你就意识到:GET请求的参数都是透明的(这也是为什么不用于登录这样的表单页面的),并且参数前面一般带有一个标记字段,比如这里wd=xxxx

  • POST请求

    • 一般涉及到填写表单(登录之类的表单)都涉及到POST请求
    • POST请求肯定是隐藏看不见的,但是你想找到你提交的登录表单还是可以的,只是比较麻烦
    • 这里我举个例子,豆瓣登录,选择密码登录,随便输入一串,然后点击登录,不过在此时需要打开浏览器的”检查“功能(任何浏览器都有,但是可能名字不同,这里是Google),然后细心去找:在这里插入图片描述

3. 其他基础知识

3.1 数据库

​ 为什么需要学习数据库的基础知识,主要是方便管理爬取的内容/构建代理池。

但是,其实对于我们个人学习者来说,一般用不到数据库,普通的txt文件就够用了,因此学不学习还是看自己的需求。

3.2 代理

​ 为什么需要代理?主要目的是提高爬取速度。因为爬虫对于大部分网站来说就是害虫,因此如果你的脚本程序不限制访问速度,那么容易被判断出来是一个爬虫,就会被短时间禁掉ip。这其实属于爬虫与反爬的斗争。

​ 对于这个问题,我们可以构建代理池,即用网上别人提供的ip去访问,这样我们可以同时调用几百个ip去访问,即使一个ip一秒钟访问1次,那么速度也提升了。

​ 网上有免费的代理网站,不过肯定没有付费爽,但是建议大家使用免费的。

在这里插入图片描述

4. 总结

​ 好的,本篇文章主要梳理了一下学习爬虫的基础知识,并为大家介绍了主要用到的基础知识。下一篇就开始介绍python的请求库requests了。

http://www.dt0577.cn/news/19132.html

相关文章:

  • 网站开发中的网页上传和网站发布常德网站设计
  • 做mod的网站杭州网站优化效果
  • 滨州网站建设公司电话jsurl中文转码
  • 郴州市网站建设公司友情链接交换统计表
  • 做商城网站买多大的空间山东移动网站建设
  • 做直播网站要多大带宽百度开户渠道
  • b2b网站开发网站为什么要seo
  • 做艺人资料卡的网站奉化云优化seo
  • nanopi neo做网站it培训机构有哪些
  • 在网站上显示地图广州网站定制多少钱
  • 建设银行不弹出网站日本进口yamawa
  • 访链家网网站开发最新推广注册app拿佣金
  • 工信部 网站要独立ip近期国内外重大新闻10条
  • 建设建设银行甘肃分行网站如何营销
  • 国外幼女和成人做视频网站去哪里找需要推广的app
  • 国外优秀vi设计网站百度指数首页
  • 企业网站建设费用摊销企业查询宝
  • lamp网站怎么建设seo精灵
  • 怎样在局域网做网站seo关键词分析
  • 鞍山SEO网站推广公司做销售怎么和客户聊天
  • 沙田镇仿做网站网站推广的公司
  • 福田莲花网站建设提高工作效率8个方法
  • 网站建设公司报价互联网营销师国家职业技能标准
  • 燕郊疫情最新消息搜索引擎优化方法包括
  • php工具箱是直接做网站的吗前端培训哪个机构靠谱
  • 做网站用什么笔记本配置怎么做公众号
  • 网站开发需求网长沙网站提升排名
  • 千灯做网站网站seo顾问
  • WordPress突然全站404百度榜
  • 建设网站都要学些什么问题网站和网页的区别