初学者怎么学习Python?Python学习从什么开始?

学习Python,可以先从Python爬虫开始哈

首选,爬虫并不是网上传言的那样,动不动就面向铁窗编程等,正规的爬虫还是相当有市场的!!!

而 Python 作为入门简易的语言,语法也相当简洁,用来入门爬虫再好不过了!

学习Python爬虫需要一定的计划和步骤,以下是一个简单的学习计划:

  1. 学习Python基础知识:首先需要学习Python的基础知识,包括语法、数据类型、函数、模块等。可以通过在线教程或者相关书籍进行学习。

  2. 学习网络编程基础:爬虫的核心是网络编程,需要了解HTTP协议、URL解析、请求库、响应库等相关知识。推荐使用Python内置的requests库进行网络请求。

  3. 学习HTML/CSS解析:爬虫需要解析网页内容,因此需要学习HTML/CSS的相关知识。可以使用Python内置的BeautifulSoup库进行HTML/CSS解析。

  4. 学习数据存储:爬虫获取的数据需要进行存储和管理,可以使用数据库(如MySQL)或者文件(如CSV、JSON)进行存储。

  5. 实践项目:通过实践项目来巩固所学知识,可以选择一些简单的爬虫项目进行练习,例如爬取某个网站的信息并进行分析。

  6. 不断学习和提高:爬虫技术在不断发展变化,需要不断学习和跟进最新的技术和工具,例如Scrapy框架、Selenium等。

除了计划,还需要一定的学习步骤

  • 学习 Python 基础知识:了解 Python 的基本语法、数据类型、流程控制等基础知识。

  • 学习 requests 库:掌握 requests 库的使用,包括发送 HTTP 请求、获取响应内容等。

  • 学习 Beautiful Soup 或 lxml 等库:掌握 Beautiful Soup 或 lxml 等库的使用,包括解析 HTML、提取信息等。

  • 实践项目:通过实践项目来巩固所学知识,例如爬取某个网站的数据、分析网页结构等。

  • 学习数据库和文件操作:了解数据库和文件操作相关知识,以便将爬取的数据保存到本地文件或数据库中。

兵马未动,粮草先行。

我们有了计划和学习步骤之后,就可以着手完成一个个小项目了

一个简单的实战例子

import requests
from bs4 import BeautifulSoupurl = 'https://www.baidu.com'
response = requests.get(url)
html = response.text
soup = BeautifulSoup(html, 'html.parser')
title = soup.title.string
print(title)

当然,从总的爬虫流程来看,爬虫主要分为三部分,请求、解析和存储

1、发送请求

使用 Python 的 requests 库发送 HTTP 请求,获取网页内容。

import requestsurl = 'https://www.baidu.com'
response = requests.get(url)
html = response.text
print(html)

2、解析 HTML

使用 Beautiful Soup 或 lxml 等库解析 HTML,提取出需要的信息。

from bs4 import BeautifulSouphtml = """
<div><h1>百度一下,你就知道</h1><p>百度一下,全球最大的中文搜索引擎、致力于让网民更便捷地获取信息,找到所求。</p>
</div>
"""
soup = BeautifulSoup(html, 'html.parser')
title = soup.title.string
print(title)

3、存储数据

将提取的数据保存到本地文件或数据库中。

import jsondata = {'title': '百度一下,你就知道','description': '百度一下,全球最大的中文搜索引擎、致力于让网民更便捷地获取信息,找到所求。','link': 'https://www.baidu.com'
}
with open('data.json', 'w') as f:json.dump(data, f)

再来来看一个实战例子

众所周知,B站是用来学习的,下面咱们就通过B站来学习~小美女美照的抓取!

废话不多说,直接开干

网页分析

首先咱们先来分析B站网页,现在B站的搜索框里键入我们的关键词

然后我们点击下一页,通过浏览器的 F12 来查看网络请求

网络请求比较多,不过这都难不倒我们老司机了,咱们一眼就定位到了对应的请求

把上面的请求 URL 复制到 postman 当中,直接 send 一下试试

也是没有问题的,那么下面就是来编写代码了。

对于基础代码,咱们可以直接使用 postman 的提示代码

postman 还是很强大,也深知咱们用户的想法,哈哈哈!

import requestsurl = "https://api.bilibili.com/x/web-interface/search/type?page=2&page_size=42&platform=pc&keyword=%E5%B0%8F%E7%BE%8E%E5%A5%B3&qv_id=RdBSJVPTX7sckeQMETPhzRB7aqKqU5rk&ad_resource=5654&source_tag=3&search_type=video&dynamic_offset=30"payload={}
headers = {}response = requests.request("GET", url, headers=headers, data=payload)print(response.text)

编写代码

下面就是改编代码了,我们只需要调整 page 参数,然后再解析响应消息体即可

def fire():uri = "https://api.bilibili.com/x/web-interface/search/type?page=current_page&page_size=42&platform=pc&keyword=%E5%B0%8F%E7%BE%8E%E5%A5%B3&qv_id=RdBSJVPTX7sckeQMETPhzRB7aqKqU5rk&ad_resource=5654&source_tag=3&search_type=video&dynamic_offset=30"for i in range(1, 25):url = uri.replace("current_page", str(i))response = requests.request("GET", url, headers=headers, data=payload)datas = response.json()titles, hrefs = get_hrefs(datas)download_pic(titles, hrefs)

通过 for 循环来请求 api 地址,再把拿到的响应数据传递给另外两个函数,分别处理响应数据和保存图片。

再来看看下载图片的代码

    for i in range(len(hrefs)):title_t = titles[i].replace('/','').replace(',','').replace('?','')title_t = title_t.replace(' ','').replace('|','').replace('。','')title_t = title_t.replace('<emclass="keyword">小美女<em>', '')title_t = title_t.replace('【', '')title_t = title_t.replace('】', '')title_t = title_t.replace('*', '')filename = '{}{}.jpg'.format(path,title_t)with open(filename, 'wb') as f:req = requests.get(url=hrefs[i], headers=headers)f.write(req.content)time.sleep(random.uniform(1.5,3.4))

主要是处理 title 当中的特殊字符

最终效果如下

好了,这就是今天分享的全部内容,喜欢就点个赞吧~


如果你对Python感兴趣,想要学习python,这里给大家分享一份Python全套学习资料,都是我自己学习时整理的,希望可以帮到你,一起加油!

😝有需要的小伙伴,可以V扫描下方二维码免费领取🆓

1️⃣零基础入门

① 学习路线

对于从来没有接触过Python的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
在这里插入图片描述

② 路线对应学习视频

还有很多适合0基础入门的学习视频,有了这些视频,轻轻松松上手Python~
在这里插入图片描述

③练习题

每节视频课后,都有对应的练习题哦,可以检验学习成果哈哈!
在这里插入图片描述

Python兼职渠道推荐

学的同时助你创收,每天花1-2小时兼职,轻松稿定生活费.
在这里插入图片描述

2️⃣国内外Python书籍、文档

① 文档和书籍资料

在这里插入图片描述

3️⃣Python工具包+项目源码合集

①Python工具包

学习Python常用的开发软件都在这里了!每个都有详细的安装教程,保证你可以安装成功哦!
在这里插入图片描述

②Python实战案例

光学理论是没用的,要学会跟着一起敲代码,动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。100+实战案例源码等你来拿!
在这里插入图片描述

③Python小游戏源码

如果觉得上面的实战案例有点枯燥,可以试试自己用Python编写小游戏,让你的学习过程中增添一点趣味!
在这里插入图片描述

4️⃣Python面试题

我们学会了Python之后,有了技能就可以出去找工作啦!下面这些面试题是都来自阿里、腾讯、字节等一线互联网大厂,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
在这里插入图片描述
在这里插入图片描述

上述所有资料 ⚡️ ,朋友们如果有需要的,可以扫描下方👇👇👇二维码免费领取🆓

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/571301.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux-2 Linux的权限

目录 1.什么是权限&#xff1f; 2.权限的本质 3.Linux中的用户 普通用户与root用户相互转换 普通用户不变root&#xff0c;以root身份执行一个命令 LInux中的角色 4.Linux文件的权限 5.快速掌握修改权限的做法 修改权限 6.对比权限有无表现 对于普通用户&#xf…

1+x中级题目练习复盘(20220625 1+X 中级理论考试)

Override 用于标注重写方法 函数式接口是指有且只有一个抽象方法的接口&#xff1b;

DP背包模型

目录 采药&#xff08;01背包&#xff09;代码实现 装箱问题&#xff08;01背包&#xff09;代码实现 *宠物小精灵之收服&#xff08;二维费用01背包&#xff09;题目分析代码实现 数字组合&#xff08;01背包&#xff09;代码实现 买书&#xff08;完全背包&#xff09;代码实…

Chrome 插件 tabs API 解析

Chrome.tabs API 解析 使用 chrome.tabs API 与浏览器的标签页系统进行交互&#xff0c;可以使用此 API 在浏览器中创建、修改和重新排列标签页 Tabs API 不仅提供操作和管理标签页的功能&#xff0c;还可以检测标签页的语言、截取屏幕截图&#xff0c;以及与标签页的内容脚本…

linux之zabbix自定义监控

zabbix基本配置见&#xff1a;写文章-CSDN创作中心https://mp.csdn.net/mp_blog/creation/editor/136783672 自定义监控规则 命令为who | wc -l 显示为2&#xff0c;主机一个&#xff0c;mobaxterm一个&#xff0c;思路是开启3个终端&#xff0c;让主机的zabbix服务自动检测1…

报名PMP考试需要满足哪些条件?

报名条件如下&#xff1a; 项目经验这一点&#xff0c;PMP报考人员是需要有项目管理经验&#xff0c;而所说的具有多少小时的项目管理经验&#xff0c;指的是项目相关经验&#xff0c;比如参与项目研发、测试、交付、运维、技术支持、售前等&#xff0c;这个项目经验也是一个国…

【数据分享】1929-2023年全球站点的逐日平均海平面压力(Shp\Excel\免费获取)

气象数据是在各项研究中都经常使用的数据&#xff0c;气象指标包括气温、风速、降水、能见度等指标&#xff0c;说到气象数据&#xff0c;最详细的气象数据是具体到气象监测站点的数据&#xff01; 有关气象指标的监测站点数据&#xff0c;之前我们分享过1929-2023年全球气象站…

嵌入式开发——基础元器件

目录 1. 电阻 2. 电容 3. 电感 4. 二极管 5. 三极管 6. MOS管 7. 晶振 8. 磁珠 9. LDO 10. 电源 11. 接地 12. 线路 13. 电压表 14. 电流表 1. 电阻 根据欧姆定理&#xff0c;UI*R&#xff0c;通过某段导体的电流跟这段导体两端的电压成正比&#xff0c;跟这段导…

P6学习:解析P6 WBS-工作分解结构的原则

前言 WBS&#xff0c;及Work Breakdown Structure&#xff0c;中文工作分解结构&#xff0c;是总结工作阶段的项目的层次结构分解。 WBS 就像项目的大纲——它将项目分解为特定的可交付成果或阶段。 然后将活动添加到这些层中以创建项目计划的时间表。 WBS 使用流程会有所不…

白话模电:4.耦合、差分、无源滤波、反馈(考研面试常问问题)

一、介绍一下三极管多级放大电路的三种耦合方式及其特点&#xff1f;耦合的目的是什么&#xff1f; 多级放大电路中各放大级之间的连接方式称为耦合方式。常见的耦合方式有三种&#xff1a;阻容耦合&#xff08;RC耦合&#xff09;、直接耦合和变压器耦合。 耦合的目的是将信号…

Jenkins磁盘空间批量清理脚本

一、简介 Jenkins如果没有设置保留构建历史数&#xff0c;磁盘会随着使用次数增加而越来越满&#xff0c;于是需要批量清理一下。 二、清理脚本 找到Script Console 输入脚本&#xff0c;并点击执行&#xff0c;需要注意期望删除的构建历史编号&#xff08;可以查看下面的效果…

后端基础篇- 社区 IDEA 手动 Maven 创建 SpringBoot 项目、Maven 安装与配置环境变量、IDEA 集成 Maven

&#x1f525;博客主页&#xff1a; 【小扳_-CSDN博客】 ❤感谢大家点赞&#x1f44d;收藏⭐评论✍ 文章目录 1.0 Maven 安装与配置环境变量 1.1 下载并解压安装包 1.2 配置本地仓库 1.3 配置阿里云私服 1.4 配置环境变量 2.0 IDEA 集成 Maven 2.1 首先创建一个新项目 2.2 开始…