Python爬虫零基础教学第一天

Posted R-f-12

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python爬虫零基础教学第一天相关的知识,希望对你有一定的参考价值。

Python爬虫高级开发/大数据抓取/从入门到精通/商业项目实战(1)

开始时间2023-05-05 22:02:26

结束时间2023-05-06 01:09:52

 一、DNS

DNS 域名系统(英文:Domain Name System,缩写:DNS)是互联网的一项服务。它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。DNS使用UDP接口53。当前,对于每一级域名长度的限制是63个字符,域名总长度则不能超过253个字符。

1)DNS 是计算机域名系统 (Domain Name System 或Domain Name Service) 的缩写,由解析器和域名服 务器组成的。

2)域名服务器是指保存有该网络中所有主机的域名和对应IP地址,并具有将域名转换为IP地址功能的服务 器。

3)一般一个域名的 DNS解析时间 在10~60毫秒之间。

二、HTTP&HTTPS

1)HTTP协议(HyperText Transfer Protocol,超文本传输协议):是一种发布和接收 HTML页面的方法。

2)HTTPS(Hypertext Transfer Protocol over Secure Socket Layer)简单讲是HTTP的安全版,在HTTP 下加入SSL层。

3)SSL(Secure Sockets Layer 安全套接层)主要用于Web的安全传输协议,在传输层对网络连接进行加 密,保障在Internet上数据传输的安全。 HTTP的端口号为80, HTTPS的端口号为443

4)HTTP工作原理 网络爬虫抓取过程可以理解为模拟浏览器操作的过程 。 浏览器的主要功能是向服务器发出请求,在浏览器窗口中展示您选择的网络资源,HTTP是一套计算机 通过网络进行通信的规则

5)HTTP的请求与响应 HTTP通信由两部分组成: 客户端请求消息 与 服务器响应消息

6)浏览器发送HTTP请求的过程: 1. 当用户在浏览器的地址栏中输入一个URL地址并按回车键之后,浏览器会向HTTP服务器发送 HTTP请求。 HTTP请求主要分为 Get 和 Post 两种方法。 2. 当我们在浏览器输入URL http://www.baidu.com 的时候,浏览器发送一个Request请求去获取 htt p://www.baidu.com 的html文件,服务器把Response文件对象发送回给浏览器。 3. 浏览器分析Response中的 HTML,发现其中引用了很多其他文件,比如Images文件,CSS文 件,JS文件。 浏览器会自动再次发送Request去获取图片,CSS文件,或者JS文件等。 4. 当所有的文件都下载成功后,网页会根据HTML语法结构,完整的显示出来了。

7)URL(Uniform / Universal Resource Locator的缩写):统一资源定位符,是用于完整地描述

8)Internet上网页和其他资源的地址的一种标识方法。

 基本格式:scheme://host[:port]/path/…/[?query-string][#anchor]

scheme:协议(例如:http, https, ftp)

host:服务器的IP地址或者域名

port:服务器的端口(如果是走协议默认端口,缺省端口80)

path:访问资源的路径

query-string:参数,发送给http服务器的数据

anchor:锚(跳转到网页的指定锚点位置)

9)客户端HTTP请求 URL只是标识资源的位置,而HTTP是用来提交和获取资源。客户端发送一个HTTP请求到服务器的请求 消息,包括以下格式: 四个部分组成,下图给出了请求报文的一般格式。

 10)请求方法

a.HTTP 0.9:只有基本的文本 GET 功能。

b.HTTP 1.0:完善的请求/响应模型,并将协议补充完整,定义了三种请求方法: GET, POST 和 HEAD 方法。

c.HTTP 1.1:在 1.0 基础上进行更新,新增了五种请求方法:OPTIONS, PUT, DELETE, TRACE 和 CONNECT 方法。

d.HTTP 2.0(未普及):请求/响应首部的定义基本没有改变,只是所有首部键必须全部小写,而且请求 行要独立为 :method、:scheme、:host、:path这些键值对。

三、响应状态码

100~199:表示服务器成功接收部分请求,要求客户端继续提交其余请求才能完成整个处理过 程。

200~299:表示服务器成功接收请求并已完成整个处理过程。常用200(OK 请求成功)。

300~399:为完成请求,客户需进一步细化请求。例如:请求的资源已经移动一个新地址、常 用302(所请求的页面已经临时转移至新的url)、307和304(使用缓存资源)。

400~499:客户端的请求有错误,常用404(服务器无法找到被请求的页面)、403(服务器拒 绝访问,权限不够)。

500~599:服务器端出现错误,常用500(请求未完成。服务器遇到不可预知的情况)。

 

 实战操作

一、安装虚拟机

1.登入界面

2.执行配置文件在PythonENVISION文件夹中有configure.sh配置文件通过bash configure.sh命令执行该文件进行配置,输入密码看不见

3.配置完成

 4.执行reboot重启一下虚拟机,把刚刚配置好的环境加载进来

 5.点击快速休眠,下一次打开可继续使用

二、pycharm

1.创建文件

 2.安装requests

 3.下载完成

 4.查看

 5.获取博客园地址源代码

import requests


# 请求地址
url = \'https://www.cnblogs.com/\'

# 发送网络请求
response = requests.get(url)

# print(response,type(response))

text = response.text

print(text)

 

总结:爬虫是什么?我认为爬虫是模拟浏览器向特定网页发送请求从而获取数据的过程。根据使用场景,网络爬虫可分为 通用爬虫 和 聚焦爬虫 两种.通用性搜索引擎局限性的逐渐暴露,聚焦爬虫得到广泛的使用。聚焦爬虫,是"面向特定主题需求"的一种网络爬虫程序,它与通用搜索引擎爬虫的区别在于: 聚焦爬虫 在实施网页抓取时会对内容进行处理筛选,尽量保证只抓取与需求相关的网页信息。在大数据时代,数据的需求越来越大爬虫工程师在每个领域不可或缺,掌握爬虫技术也越来越重要,从零开始试着成为一名优秀的爬虫工程师。

每日一mo:我没剩什么可输的了,尽力战斗便好!

Python零基础入门的第一天——开发环境的搭建

活动地址:CSDN21天学习挑战赛

前言

  2021年10月,语言流行指数的编译器TiobePython加冕为最受欢迎的编程语言,20年来首次将其置于JavaCJavaScript之上。
  Python零基础入门的第一天,学习Python语言程序设计的基本方法。知道什么是程序设计语言,了解Python语言的发展和特点,并进行Python开发环境的搭建。

文章目录

Python语言程序设计的基本方法

1.1 程序设计语言

1.1.1程序设计语言概述

什么叫程序设计语言?
  程序设计语言也叫编程语言,是计算机能够理解和识别用户意图的一种交互体系,它按照特定规则组织计算机指令,使用计算机能够自动进行各种运算处理。

什么叫计算机程序
按照编程语言规则组织起来的一组计算机指令。

程序设计语言发展的三个阶段

编程语言为什么不用自然语言(如:中文)?
  因为自然语言不够精确,存在计算机无法理解的二义性。自然语言具有不严密和模糊的缺点,需要交流双方具有较高的识别能力才能懂。现在的计算机还不具备理解这种高强度的二义性语言。程序设计语言在语法上十分精密,在语义上定义准确,在规则上十分严格,可以保证语法含义的唯一性。

1.1.2编译和解释

高级语言根据计算机执行机制的不同分为:静态语言脚本语言
静态语言:采用编译方式执行,如C语言,Java语言等
脚本语言:采用解释方式执行,如JavaScript,Python语言等

什么是编译?
  是将源代码转换成目标代码的过程。源代码是高级语言代码,目标代码是机器语言代码,执行编译的计算机程序称为编译器。

  编译器将源代码转换成目标代码,计算机可以立即或稍后运行目标代码,运行目标代码时,程序获得输入并产生输出。

  编译是一次性的翻译,一旦程序被编译,不再需要编译程序或者源代码,相当于“外语书籍的翻译”,一旦翻译完成就不需要再看原文了。

什么是解释?
  解释是将源代码逐条转换成目标代码同时逐条运行目标代码的过程。执行解释的计算机程序称为“解释器”。

  高级语言代码与数据一同输入给解释器,然后输出运行结果。
解释是每次程序运行都需要解释器和源代码,就好比开人大会时的“同声传译”。

1.1.3计算机编程

为什么要学习计算机编程?
  编程能够训练思维。编程思维又称计算机思维,是区别于以数学为代码的逻辑思维和以物理为代表的实证思维的第三种思维模式。编程是一个求解问题的过程,首先需要分析问题、抽象内容之间的交互关系、设计利用计算机求解问题的确定性方法,进而通过编写和代码调试解决问题,这是从抽象问题到解决问题的完整过程。

  编程能够带来乐趣。计算机编程是展示自身思想和能力的舞台,能够将程序员的所思所想变为现实。

  编程能够提高效率。使用Python可以实现一秒钟扣图,10行代码汇总百万条数据…

  编程带来就业机会。程序员是信息时代最重要的工作岗位之一,国内外程序员的缺口都在百万级以上规模,就业前景广阔。

1.2 Python语言概述

1.2.1Python语言的发展

  Python的创始人为吉多范罗苏姆(Gudio van Rossum),1989年的圣诞节期间,吉多范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的解释程序,作为ABC语言的一种继承。因此诞生了Python语言。Python最早的可用版本诞生在1991年,经过广大程序员近30年的发展和应用,Python语言已经成为当代计算机技术发展的重要标志之一。

  Python语言解释器的全部代码都是开源的,可以https://www.python.org/自由下载。

  2000年10月,Python2.0版本发布,标志着Python完成了自身涅槃,开启了广泛应用的新时代。2010年Python2系列发布了最后一个版本,主版本号为2.7。

  2008年12月,Python3.0发布,这个版本的解释器内部完全采用面向对象方式实现,在语法层面做了很多重大改进。这些重要修改所付出的代价是3.x系列版本代码无法向下兼容2.x的系列既有语法。

  从2008年开始,用Python编写的几万个标准库和第三方库开始了版本升级过程,这个过程前后历时8年。

  2016年,所有Python重要的标准库和第三方库都已经在Python3.x版本下进行演示和发展。Python语言版本升级过程宣告结束。

1.2.2Python语言的特点

Python语言的重要特点:

  • Python语法简单:Python语法主要用来精确表达问题逻辑,接近自确语言,只有35个保留字。实现相同程序功能,Python语言的代码行数仅相当于其它语言的1/5或1/10。
  • Python生态丰富:Python解释器提供了几百个内置类和函数库,世界各地程序员通过开源的社区贡献了十几万个第三方函数库,几乎覆盖了计算机技术的各个领域。
  • Python多语言集成:程序员不仅可以使用Python语言编写程序,还能够将C或C++等语言编写的代码封装后以Python语言方式使用,达到了对多种编程语言的集成。

Python语言的其它特点:

  • 平台无关:Python程序可以在任何安装了Python解释器的计算机环境中执行,因此,可以不经修改地实现跨操作系统运行。
  • 强制可读:Python通过强制缩进来体现语句间的逻辑关系,显著提高了程序的可读性,进而增强了Python程序的可维护性。
  • 支持中文:Python3.x版本采用Unicode编码表示所达所有字符信息。(Python2.x不支持中文的使用,需要通过设置编码等方式间接支持)。
  • 模式多样:Python同时支持面向过程和面向对象两种编程方式,也可以简单地通过语句执行,编程模式十分灵活。
  • 类库便捷:用好函数库是Python语言开发的核心,Python类库从安装到使用都非常便捷。使用pip命令可以用一行代码安装类库。

1.3 Python开发环境配置

1.3.1Python开发环境安装

安装python解释器

官网:https://www.python.org/

https://www.python.org/downloads/windows/

进入官网,以windows系统安装为例

1.选择downloads

2.选择Windows


这里是最新版,我们不安装这个,继续往下拉
拉找到Note that Python 3.5.3 cannot be used on Windows XP or earlier.


3.我们点击Download Windows x86-64 executable installer可执行安装文件

4.下载好后双击打开

5.勾选下面的添加环境变量,选择合适的安装路径


6.点击Next


7.左侧默认,选择安装路径,install


安装过程,耐心等待。


8.安装成功,点击close关闭


9.测试
找到Python3.5(64-bit)

输入print('hello word')回车

或者win+R输入python回车,出现>>>在输入print('hello word')回车
如上图所示,Python解释器就安装成功啦。

1.3.2Python程序的编辑方式

Python程序的编辑方式常用的有两种:
1.Python的交互式命令行程序
适合编写少量代码
打开方式: Windows键+R打开运行窗口,输入cmd

打开运行窗口

在DOS窗口输入python即可进入到Python交互式命令行程序,或者直接找到python.exe双击运行。
DOS窗口输入python

直接双击python.exe

2.Python自带的IDLE集成开发环境(计算机二级考试要求使用IDLE
在“开始”菜单中搜索关键词“IDLE”找到快捷方式,启动后显示一个交互Python运行环境。

IDLE集成开发环境

在菜单中选择“File—>New File”选项。启动的窗口是一个IDLE提供的代码编辑器,具备Python语法高亮辅助功能,可以用来编写几百行以内的代码。

1.3.3Python程序的运行方式

Python程序的两种运行方式:
交互式
利用Python解释器即时响应用户输入的代码并输出结果。一般用于调试少量代码。’>>>’提示符后输入代码即可运行,输入exit()quit()可以退出,没有‘>>>’的行表示运行结果。

交互式即时响应

文件式
将Python程序写在一个或多个文件中,启动Python解释器批量执行文件中的代码。文件式是最常用的编程方式。

文件式程序在IDLE的编辑窗口中编写,在菜单中选择‘Run—>Run Module’选项运行Pyhton代码。

1.4 集成开发环境Pycharm的安装及模板设置

  PyCharm是一种Python IDE,提供了一些高级功能,带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具,比如调试、语法高亮、Project管理、代码跳转、智能提示、自动完成、单元测试、版本控制。

1.4.1Pycharm的下载及安装

jetbrains官网:https://www.jetbrains.com.cn/

PyCharm官方下载网址:https://www.jetbrains.com.cn/pycharm/

PyCharm是一种Python的集成开发环境,带有一整套可以帮助用户在使用Python语言开发时提高效率的工具。

进入官网后:
步骤一

步骤二
步骤三
步骤四
步骤五
步骤六
步骤七
步骤八

1.4.2pycharm的使用

1.双击图标打开


2.选择New Project

3.选择目录

4.选择解释器,OK后点击Create
5.系统给我们创建了一个main.py 的文件,里面的代码

# This is a sample Python script.

# Press Shift+F10 to execute it or replace it with your code.
# Press Double Shift to search everywhere for classes, files, tool windows, actions, and settings.


def print_hi(name):
    # Use a breakpoint in the code line below to debug your script.
    print(f'Hi, name')  # Press Ctrl+F8 to toggle the breakpoint.


# Press the green button in the gutter to run the script.
if __name__ == '__main__':
    print_hi('PyCharm')

# See PyCharm help at https://www.jetbrains.com/help/pycharm/

直接右键运行
输出:Hi,Pycharm

1.4.3Pycharm模板的设设置

1.File-Settings
2.直接照着图上详细的步骤走
然后点击OK即可

3.我们来新建一个demo.py文件试试效果

可以看到效果还是不错哒。

1.5 IPO程序编写方法

  无论程序规模是大还是小,每个程序都有统一的运算模式,即:输入数据、处理数据、输出数据。这种朴素的运算模式形成了程序的基本编写方法:IPO(input、process、output)方法。IPO也是非常基本的程序设计方法,能够帮助初学者理解程序设计的开始过程,也就是了解程序的运算模式,从而建立程序设计的基本概念。

输入input)是一个程序的开始。程序要处理的数据有多种来源,形成了多种输入方式,包括文件输入、网络输入、控制台输入、交互界面输入、随机数据输入、内部参数输入等。

输出output)是程序展示运算结果的方式。程序的输出方式包括控制台输出、图形输出、文件输出、网络输出、操作系统内部变量输出等。

处理process)是程序对输入数据进行计算产生输出结果的过程。计算问题的处理方法统称为“算法”,它是程序最重要的组成部分。是程序的灵魂。

1.6总结

知道了什么是程序设计语言,了解了python语言的发展和特点,安装了python解释器,对python虚拟环境进行配置,下载并安装python集成开发PyCharm以及模板的设置。

以上是关于Python爬虫零基础教学第一天的主要内容,如果未能解决你的问题,请参考以下文章

Python爬虫入门 | 1 Python环境的安装

Python爬虫入门 1 Python环境的安装

Python零基础入门的第一天——开发环境的搭建

网安零基础学习-python安装(灰帽编程第一天)

零基础如何入门Python

Python爬虫求教学?