跳转至

Python

实际项目开发中,不同项目可能需要第三方包的不同版本,迫使我们需要根据实际需求不断进行更新或卸载相应的包,而如果我们直接使用本地的Python环境,会导致整体的开发环境相当混乱而不易管理。这个时候就需要引入虚拟环境的概念,将各个开发环境隔离开来,可以各个独立管理而不糅杂。

python包管理(pip)

pip 是一个现代的,通用的 Python 包管理工具。提供了对 Python 包的查找、下载、安装、卸载的功能。

注:pip 已内置于 Python 3.4 和 2.7 及以上版本,其他版本需另行安装。

# pip安装依赖包时,需要下载源,由于中国局域网hhh,但有解决办法
# 1 打开你的梯子代理,当然要消耗流量咯
# 2 更换为国内软件源 :
pip install xxx -i https://pypi.tuna.tsinghua.edu.cn/simple
pip unistall xxx xxx xxx ... xxx #移除多个库
pip freeze <requirement.txt> #查询第三方库(并且导出)
pip install -r requirements.txt #(根据导出安装)
pip uninstall -r <requirements.txt> -y #(根据导出卸载)

python环境管理

Python 虚拟环境的创建(venv)

venv

python 常用语法

main

if __name__ == "__main__":这个if语句的条件只有当这个模块被直接运行时才会满足,当这个模块被导入别的模块时是不会被满足的。

​所以,凡是想让某些代码只在直接执行当前模块时运行,就把这些代码放到这个if语句下面即可,这就是这个语句存在的意义。

面向对象

Python3 面向对象

python 爬虫

request

常用的 HTTP 请求库,可以方便地向网站发送 HTTP 请求,并获取响应结果。

一般网页都不喜欢被爬虫爬取,除了搜索引擎之外其他的爬虫爬取网页对这个网站的拥有者来说是没有任何好处的,反而会消耗服务器资源。所以像我们这种大摇大摆地喊着自己是爬虫程序去找服务器要信息的自然是会被一脚踢出来,所以我们需要做一下伪装。我们直接把浏览器标识拿过来自己构造一个 headers

BeautifulSoup4

先对网页源代码进行简单的分析,再清洗出需要的数据

  • .find(name, attrs, recursive, text, **wargs)

    只返回第一个匹配到的对象

  • .find_all(name,attrs,recursive,text,limit,**kwargs)

    返回所有匹配到的对象,区别于find(find只返回查找到的第一个结果)