python开源代码自学问题解决(requests+openpyxl+pymysql)

news2024/11/17 9:37:57

目的

解决一下在一个开源代码中遇到的问题,作者已经学完了python的基础内容,因此找了一份开源的python代码进行学习,下面这份开源代码主要作用就是在拉勾网上获取与Python相关的职位信息,并将这些信息保存到本地的MySQL数据库中,同时生成包含职位信息的Excel文件。

requests库无法正常依赖

在这里插入图片描述
1、无法从源解析导入requests,类似于C的没办法导入stdio.h的标准库。
requests 这个库是一个简单的HTTP库。

解决方案:
(1)首先查看自己的python版本和vscode的安装版本是不是不一样。
vscode直接在文件的右下脚就有:
在这里插入图片描述
系统的话,我这里是win11,直接命令行python --version查看一下:
在这里插入图片描述
这是一样的,版本上应该是没有问题。
(2)requests的依赖库没有安装,使用命令pip list查看:
在这里插入图片描述
pip install requests(安装失败如下,因为我的python版本是3.x的了)
在这里插入图片描述

pip3 install requests(python3.x以上的版本需要用这个命令安装)
在这里插入图片描述
安装成功后再用pip list查看可以看到requests的3.32.3版本成功安装了:
在这里插入图片描述
最后再查看我的python代码可以看到这个依赖库已经正常了。
在这里插入图片描述
PS:这是一份开源代码,作者是初学小白所以会遇到这样的问题。下面的openyxl和pymysql的依赖库应该也是没安装,于是安装上面的思路查询相关的解决办法。

requests库的作用

见名思义,请求库,目前初步接受感觉应该是用于从网上获取相关信息的作用,简单的说就是进行信息收集的作用,是个蛮重要的库。

pip(python的包安装程序)

pip 是 Python 的包安装程序。
其实,pip 就是 Python 标准库(The Python Standard Library)中的一个包,只是这个包比较特殊,用它可以来管理 Python 标准库中其他的包。该工具提供了对Python 包的查找、下载、安装、卸载等功能。

pip和pip3的区别
1、pip主要用在python2版本的包安装,pip3用在python3上面。

openpyxl 库

作用

openpyxl = open + python + xlsx
开源的python的用来处理电子表格类文件的一个库,应该可以后续很方便的将我们从网上爬虫获取的到数据整理到一个电子表格中,应该是一个很重要的库或者说包。

安装

同上使用pip3 install openpyxl命令进行安装,版本为3.1.5:
在这里插入图片描述

pymysql库

作用

PyMySQL 是一个用于 Python 的纯 Python MySQL 客户端库,提供了与 MySQL 数据库进行交互的功能。PyMySQL 允许 Python 开发人员连接到 MySQL 数据库服务器,并执行诸如查询、插入、更新和删除等数据库操作。
我猜测引用本库的原因主要是到时候通过requsets库收集信息以后应该会先存入到mysql数据库里面,最后通过openpyxl得到可视化的xls文件方便阅读。

安装

同上使用pip3 install pymysql命令进行安装,版本为1.1.1:
在这里插入图片描述

结语

库的依赖完成了,下面进行后续的代码进一步阅读和学习。
阅读和编写代码是提升个人编程技能的最好方法,课本上的东西没啥大用,基础一辈子都是基础,还是要多实践看看别人写的好例子好代码。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Linux】初始进程

目录 基本概念 PCB task_struct task_struct内容分类 组织进程 查看进程 查看正在运行的进程信息 获取pid和ppid 创建子进程 基本概念 一个已经加载到内存中的程序,叫做进程,正在运行的程序,叫做进程,进程是担当分配系统…

如果你不愿意冒一切风险,就不要成为创业者:如何建立一个年收入 1800 万美元的支付业务

作者:Austin Mac Nab,VizyPay 的 CEO 兼创始人 在创业初期,如果有人告诉我,我需要冒一切风险才能成功,我大概会吓得绕道而行。但事实是,如果你不愿意冒一切风险,就不要成为创业者。本着这个信念…

「JavaScript深入」彻底搞懂JS原型与原型链

JavaScript深入 — 原型与原型链 一、原因二、使用class实现继承普通的类实现继承 三、原型四、原型链小结原型原型链prototype和proto 引申 一、原因 JavaScript中除了基础类型外的数据类型,都是对象(引用类型)。但是由于其没有类&#xff…

央行放大招!潘行长发话了,现在能“贷款炒股“,这是真的吗?

9月,央行掌门人潘行长最新放话了,二套房贷款利率也得下调。这降准的利好一出,股市小涨了一波后又回到了原位,给全球金融市场带来了一股不同寻常的暖流。而非常有意思的是,在这次众多的金融政策大礼包当中,有…

CentOS8.5.2111(3)实验之DHCP服务器架设

一、实验目标 1.掌握DHCP服务器的主配置文件各项申明参数及操作及其含义 2. 具备DHCP 服务器、中继服务器的配置能力 3. 具备测试客户端正常获取服务器分配地址的能力 4. 具备DHCP服务器故障排除能力 二、实训原理/流程 (一)项目背景 …

媒界:助力民生保障 长城“消防炮”即将批量交付硬核守护万家灯火

一大波“消防炮”即将列装! 日前,长城炮官方账号发布一条“‘消防炮’来了”的视频,引发广泛关注。视频显示一批长城炮车型已完成消防装备加装,华丽变身“消防炮”,整装待发,即将交付全国消防,…

创建型模式-简单工厂-工厂方法-抽象工厂

简单工厂模式 例题 uml 代码 package simpleFactory; import java.lang.management.OperatingSystemMXBean; import java.util.Scanner; //定义Person class Person{ public void say(){} } class Man extends Person{ public void say() { System.out.…

Transformer是不是BERT、GPT的妈?看完就知道了

Transformer变异衍生出来了两个超强悍的预训练模型 一、Transformer模型 Transformer是近年来深度学习领域中备受瞩目的模型之一,其核心思想是通过自注意力机制和位置编码来捕捉输入序列中的长距离依赖关系。 自注意力机制让模型在处理每个输入元素时能够关注到所有…

Mac电脑上最简单安装Python的方式

背景 最近换了一台新的 MacBook Air 电脑,所有的开发软件都没有了,需要重新配环境,而我现在最常用的开发程序就是Python。这篇文章记录一下我新Mac电脑安装Python的全过程,也给大家一些思路上的提醒。 以下是我新电脑的配置&…

Java入门2——基本数据类型详解

今天我们系统学习一下Java的八种基本数据类型,和C语言有些还是不太一样的,还是要打起精神,好好学习~ 一、Java的数据类型 首先我们画个图,了解一下Java的数据类型 以上就涵盖了Java的数据类型,那么下面,我…

C语言自定义类型:联合体

目录 前言一、联合体1.1 联合体类型的声明1.2 联合体的特点1.3 相同成员的结构体和联合体对比1.4 联合体大小的计算1.5 联合体的⼀个练习 总结 前言 前面我讲到C语言中的自定义结构——结构体,其实C语言中的自定义结构不只有结构体,还有枚举和联合体&am…

交通 | 上门配送or自提点配送?最后一公里配送中的需求引导问题

编者按: 为提高最后一公里配送的效率,本文将客户激励与不确定的路线决策相结合,建立了一个两阶段随即规划问题,并开发了一种精确式的分支定界算法进行求解。 摘要: 为了提高最后一公里配送的效率,零售商…

Vue 3 文件编译流程详解与 Babel 的使用

文章目录 一、背景二、结论三、vitejs/plugin-vue 插件调试前物料准备vuePlugin 入口buildStart 方法transform 方法 四、vue/compiler-sfc 核心包parse 方法compileScript、rewriteDefault 方法compileTemplate 方法 五、整体架构六、总结参考资料 一、背景 最近正在研究 rea…

企业防泄密妙招有哪些?请记住这8招!超实用,学起来!

在古代,有云:“密者,德之高也;事以密成,语以泄败。” 这些谚语不仅是对忠诚守密的高度赞扬,更是对保密工作重要性的深刻阐述。 在现代企业中,数据泄露已成为不容忽视的严峻挑战。 如何有效防止…

MFC单按钮启停实例

单击按钮启动、停止交替切欣换 1、在1Dlg.h文件中添加代码 public:CMy1Dlg(CWnd* pParent NULL); // standard constructorBOOL m_b;2、在1Dlg.cpp文件中添加代码 CMy1Dlg::CMy1Dlg(CWnd* pParent /*NULL*/): CDialog(CMy1Dlg::IDD, pParent) { m_hIcon AfxGetApp()->Lo…

高中还来得及选择信息学奥赛赛道吗?

随着信息学奥赛(NOI)在升学中的重要性日益凸显,越来越多的学生和家长将其视为进入顶尖高校的一个重要途径。然而,很多学生可能直到高中阶段才意识到信息学奥赛的重要性,或者才开始对编程产生兴趣。于是问题出现了&…

DarkLabel2.4版本导入MOT17数据集

目录 背景导入效果MOT17数据集说明DarkLabel导入视频导入gt文件 背景 做目标追踪,目前找了一圈开源工具,发现DarkLabel还是很好用的,提供自动目标跟踪,标注很方便。 由于目标追踪我用的是bytetrack,官网是用mot17数据…

学校周赛(2)

A.Minimize! 题目 思路 本题只需要遍历c的取值&#xff0c;实时更新答案即可 代码 #include<iostream> #include<algorithm> using namespace std;void todo(){int a,b;cin>>a>>b;int ansINT_MAX;for(int ca;c<b;c){ansmin(ans,(c-a)(b-c));}co…

二叉树的前序遍历,中序遍历,后序遍历以及层次遍历(递归方式+C语言代码)

#include<stdlib.h> #include<stdio.h> #include<assert.h> //定义一个二叉树结点结构体 typedef int ElemTpye; typedef struct TreeNode {ElemTpye data;struct TreeNode* left;struct TreeNode* right; }TreeNode; //创建结点 TreeNode* createTreenode(E…

【qt】QQ仿真项目1

一览全局: QQ仿真项目 一.创建项目添加资源文件二.创建数据库三.自定义标题栏Qt类四.加载样式表标题栏按钮的搭配五.标题栏实现移动窗体六.标题栏按钮连接信号槽七.标题栏双击最大化和还原八.基类窗口实现标题栏按钮信号九.重写基类窗口绘图事件确保设置样式表生效十.用户登录界…