Python
星海千寻
学习使我快乐,每天进步一点点,夯实基础,足够努力,未来定可期。缓慢而坚持地学习,
花一年的时间蜕变,他日剑指长虹。
展开
-
【opencv学习】【图像的数值计算操作】
import cv2# 展示图像,封装成函数def cv_show_image(name, img): cv2.imshow(name, img) cv2.waitKey(0) # 等待时间,单位是毫秒,0代表任意键终止 cv2.destroyAllWindows()img_cat = cv2.imread('D:/images/cat.jpg')print(img_cat.shape) # 彩色图像的shape=(H, W, C)img_dog = cv2.i原创 2022-02-12 00:12:58 · 3180 阅读 · 0 评论 -
【opencv学习】ROI区域和图像填充
一:ROIROI就是region of interest,感兴趣的区域,有时候需要去看看某个特定的区域#!/usr/bin/python# -*- coding: <encoding name> -*-import cv2# 展示图像,封装成函数def cv_show_image(name, img): cv2.imshow(name, img) cv2.waitKey(0) # 等待时间,单位是毫秒,0代表任意键终止 cv2.destroyAllWin原创 2022-02-08 22:48:46 · 2539 阅读 · 0 评论 -
【opencv学习】【读取图像、视频、摄像头】
今天学习opencv一:读取图像import cv2# 展示图像,封装成函数def cv_show_image(name, img): cv2.imshow(name, img) cv2.waitKey(0) # 等待时间,单位是毫秒,0代表任意键终止 cv2.destroyAllWindows()# 读取彩色图像img = cv2.imread('images/naruto.jpg')img = cv2.imread('images/naruto.jpg',原创 2022-02-08 21:28:30 · 2143 阅读 · 0 评论 -
【小说网站 - 抓取登陆后的数据,cookie操作】
今天搞一个小说网站,搞到一些只能登陆后才能获得的信息,比如这个网站,搞到某个用户下的所有书架信息。先登录上面是一个表单,一般都是post了一些数据到某个地址,于是我们可以通过调试手段抓取其登录信息。登录信息抓到了,表单信息也有,而且请求的url是:https://passport.17k.com/ck/user/login接下来就是看看书架信息。每次点击书架,页面都会刷新,于是再来看看点击后的触发的ajax js操作。原来书架信息是json数据返回的,我们也能得到其请求的url是原创 2021-12-29 10:45:25 · 3247 阅读 · 0 评论 -
【Selenium 爬爬 猪 八 戒】
直接上代码from concurrent.futures import ThreadPoolExecutorimport timeimport osimport requestsfrom bs4 import BeautifulSoupfrom selenium.webdriver.chrome.options import Optionsfrom selenium import webdriverfrom selenium.webdriver import ActionChains原创 2021-12-28 21:02:32 · 572 阅读 · 0 评论 -
【爬取优美图库】
今天爬取优美图库的照片import timefrom concurrent.futures import ThreadPoolExecutorimport timeimport osimport reimport requestsfrom bs4 import BeautifulSoupfrom selenium import webdriverfrom selenium.webdriver.chrome.options import Optionsrootrurl = 'http原创 2021-12-27 10:44:53 · 625 阅读 · 0 评论 -
【selenium 小练手 抓取某大厂TP】
今天搞了一个抓取百度图片的小程序,以yyds的小哥来做实验吧。这个网页是鼠标下滑动态加载的,而且想要下载原图必须是鼠标停留才能看得到原图地址。于是。。。。我就直接上代码了。import osfrom selenium import webdriverfrom selenium.webdriver import ActionChainsfrom selenium.webdriver.common.keys import Keysimport timeimport requestsfrom s原创 2021-12-26 23:46:52 · 137 阅读 · 0 评论 -
python学习
这两天简单的进行了Python学习。主要是语法上的学习,很快。推荐学习链接如下,能快速上手https://www.w3cschool.cn/python3/python3-tutorial.html原创 2021-08-03 10:14:56 · 96 阅读 · 0 评论 -
《scikit-learn》数据预处理与特征工程(一)数据归一化
数据挖掘的五大流程1:获取数据从调查问卷,网络,爬虫,算法转变等一系列方式获得数据2:数据预处理这是从数据中检测、纠正、或者删除损坏、不准确、不适用的数据的过程。可能面对的问题有:数据类型不对,比如不是所有机器学习算法可以处理文字;数据的质量不行,比如有噪声,有异常,有错误,有缺失,量纲不一致,数据有重复,数据有的他打或者太小。目的就是:让数据变得完整、准确和可靠,从而使得数据更能适应、匹配模型。3:特征工程特征工程是一种为了能让原始数据转换为更能代表模型潜在问题的特征的过程,可以通过挑选最原创 2021-02-04 17:41:15 · 516 阅读 · 0 评论 -
《scikit-learn》随机森林之分类预测乳腺癌模型
今天我们使用随机森林分类器来对乳腺癌数据进行预测第一步:加载数据import matplotlib.pyplot as pltimport pandas as pdimport numpy as npfrom sklearn.datasets import load_breast_cancer # 乳腺癌数据from sklearn.ensemble import RandomForestClassifierfrom sklearn.model_selection import GridS原创 2021-02-04 11:45:49 · 3333 阅读 · 1 评论 -
《scikit-learn》随机森林回归填补缺失值
在清洗数据的阶段,我们面对缺失值有三种方式1:直接将少量具有缺失值的样本删除。2:将大量缺失值的特征删除。3:中等含有缺失值的特征进行填补。在scikit-learn中,有一个专门填充的类,专门将均值,中值,或其他数值填充,比如还有0值填充,随机森林回归填充,来分别验证拟合状况,来找出此数据集最佳的缺失值填补方式。假如我们还是使用回归数据来做测试,使用boston房价数据。第一步:加载数据# ====1:加载数据boston = load_boston()这里不展开介绍了,简单说是506个原创 2021-02-03 01:56:42 · 3421 阅读 · 1 评论 -
《scikit-learn》随机森林之回归
今天我们学习下随机森林做回归的用法话不多说直接上测试代码,看的更加清晰,总体上和回归树是一样的使用流程from sklearn.datasets import load_bostonfrom sklearn.model_selection import cross_val_scorefrom sklearn.ensemble import RandomForestRegressorimport sklearn# 加载连续型数据,boston房价boston = load_boston()原创 2021-02-02 17:30:15 · 1451 阅读 · 0 评论 -
《scikit-learn》随机森林之深入学习
本文探究一些关于随机森林细节的东西一:随机森林效果比单个决策树要好的原因是?百家言胜过一言堂在bagging中,多个分类器的随机森林为什么要比单个基本分类器要好呢?我们从数学的角度来简单分析下:假设我们有单独的一棵树,其正确率是80%(错误率是ε=0.2),我们现在要建立一片森林,假如要建立25棵树,一般在bagging下,表决的结果是根据多棵树的平均(回归问题)或者多数(分类问题)来决定的。分类问题,根据多数原则来。那么在随机森林下一个样本倍分错的概率是:其值约等于0.000369因此,原创 2021-02-02 00:18:43 · 242 阅读 · 0 评论 -
《scikit-learn》随机森林之分类树
至于集成学习方法,我们之前学习了很多的基本理论知识,现在我们进入实战环节。集成学习包含bagging的随机森林,包括boosting的Adaboost,GBDT,Xgboost等。bagging方式下,单个学习器之间完全没有联系,都是独立的。Boosting方式下,则是在前一个学习器的基础上进一步优化。今天我们先来看看最常见的随机森林中的分类树的用法吧代码如下,我们把单个决策树和随机森林放在一起运行比较。from sklearn.tree import DecisionTreeClassifie原创 2021-02-01 18:01:25 · 447 阅读 · 0 评论 -
《scikit-learn》《Kaggle》泰坦尼克数据集的试验
下载泰坦尼克数据集,下载地址是:https://www.kaggle.com/c/titanic这里如果是第一次使用kaggle的话,需要注册,注册时候有一些验证码的问题,可以参考https://www.cnblogs.com/liuxiaomin/p/11785645.html 来解决。第一步:我们来看看titanic数据集import pandas as pdfrom sklearn.tree import DecisionTreeClassifierimport matplotlib as原创 2021-01-31 21:07:59 · 491 阅读 · 1 评论 -
《scikit-learn》数据标准化与SVM之SVC
这一章节我们能学到SVC作为分类器的简单使用。先来看看对数据进行标准化的方式标准化的目的与归一化一样,都是为了避免某个特征的重要程度过大或过小。标准化的优点:受异常点的影响较小。 适用于繁杂大数据。from sklearn.preprocessing import StandardScaler# 标准化处理std = StandardScaler()# (fit_transform()等同于fit()填充数据 + tansform()转换数据)(tansform转换器转换数据时所依赖的均值原创 2021-01-30 18:01:02 · 1570 阅读 · 0 评论 -
《scikit-learn》通过GridSearchCV来进行超参数优化
微调的一种方法是手工调制超参数,直到找到一个好的超参数组合,这么做的话会非常冗长,你也可能没有时间探索多种组合,所以可以使用Scikit-Learn的GridSearchCV来做这项搜索工作。GridSearchCV的名字其实可以拆分为两部分,GridSearch和CV,即网格搜索和交叉验证。这两个名字都非常好理解。网格搜索,搜索的是参数,即在指定的参数范围内,按步长依次调整参数,利用调整的参数训练学习器,从所有的参数中找到在验证集上精度最高的参数,这其实是一个训练和比较的过程。GridSearchCV原创 2021-01-30 17:48:01 · 613 阅读 · 1 评论 -
《scikit-learn》使用交叉验证优化KNN参数
KNN有一个非常重要的参数就是n_neighbors,这个超参数很大程度上决定模型的准确性。那么我们利用有限的数据集,来调出最有说服力,最合适的这个参数呢,当然可以使用交叉验证的指标来衡量其好坏。尝试不同的n_neighbors参数,每一个都去做一次交叉验证,取结果最好的那个超参数模型即可。代码如下:from sklearn import datasets # 自带数据集from sklearn.model_selection import train_test_split, cross_val原创 2021-01-30 11:13:54 · 1219 阅读 · 1 评论 -
《scikit-learn》交叉验证
当我们训练模型的时候,首先得要有数据进行训练。我们拥有一定的数据集的时候,我们不会用所有数据去训练,因为这样我们会不知道训练出的模型的繁华能力如何,而是习惯于划分为训练数据集和测试数据集,在训练集上训练处模型,拿到测试集去做测试。而这种方式也不一定是最好的,因为,这种方式选择数据集是随机的,也许我们调的参数只是该训练集下是最优的,或许只是在特定的训练集和测试集是最有的,换了个样本集,或者是划分出的训练集就不是。为了避免这种因样本选择带来的随机性影响,我们需要额外设置一个验证集,当模型训练完成以后,先在原创 2021-01-30 11:12:50 · 622 阅读 · 0 评论 -
《scikit-learn》决策树之回归树
今天我们来看看怎么使用回归树,其实大致流程还是跟决策树一样的,只不过我们今天要使用的是tree.DecisionTreeRegressor这个类。1:加载数据由于是要做回归,因此我们需要连续的数据,比如拿波士顿房价距离。from sklearn.datasets import load_bostonfrom sklearn.model_selection import train_test_splitfrom sklearn import treeimport graphvizboston原创 2021-01-29 18:53:31 · 582 阅读 · 1 评论 -
《scikit-learn》决策树之鸢尾花分类
有了上一博客的基础,我们来看看怎么操作鸢尾花的分裂问题。也是做一个简单的总结和回顾。直接整代码了。from sklearn import treefrom sklearn.datasets import load_irisfrom sklearn.model_selection import train_test_splitimport graphviz# 分类问题举例,加载自带的鸢尾花数据集,150个样本,4个属性,3个类别。iris = load_iris()print(iris.da原创 2021-01-28 18:46:51 · 806 阅读 · 0 评论 -
《scikit-learn》决策树之分类树
前面我们学习了决策树的一些算法,提及到了scikit learn,这里我们已经基本具备了一些基本的知识,接下来我们进入实战环节,真实地去操作一把数据。希望在此学习的基础上基本掌握scikit learn的使用方法。作为具体操作scikit learn的第一篇,先得做好一些准备工作。conda install graphvizconda install scikit-learn此外还需要下载graphviz,并把其bin目录添加环境变量,重启开发环境即可。一:分类树先来看个例子from skle原创 2021-01-28 18:33:06 · 1003 阅读 · 0 评论 -
python实现Queue和Stack
Python的内置的数据类型有Map,Set,List,TupleMap:字典,键值对,值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组Set:集合,不能有重复的元素,元素之间是无序的。List:列表(序列),可以增删改查,列表的数据项不需要具有相同的类型,创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来即可,可以增删改查,元素之间是有序的。Tuple:元组与列表类似,不同之处在于元组的元素不能修改,但我们可以对元组进行连接组合。这些具体的用法都可以从https://www原创 2021-01-17 00:09:23 · 565 阅读 · 2 评论 -
Python《wallhaven壁纸爬取》
今天不小心又发现了壁纸网站,感觉壁纸很多啊,多?我就忍不住了。爬一下咯。我们今天爬取 网站是https://wallhaven.cc/。先来分析分析:进入首页:我们先去找标签,果然有个大标签地址链接。点进去后发现:一共有三层标签分类,第三层的标签就直接对应了很多的图片。假如我们随便点击一个“anime girls”,我们发现他的标签号是5。第一页呢只是几张图,但是有个按钮能看到更多,我们点进去。发现url很有特点啊。q=tagId。我猜测这个q是query的意思。后来经过测试,我们原创 2020-12-30 03:10:30 · 8611 阅读 · 4 评论 -
Python《wallpaper abyss壁纸》
今天发现了一个新的壁纸网站,wallpaper abyss,很不错哦。然而我的第一反应却是,把它爬取下来。到所有的分类页面看一看点击其中一个分类进去后每个标签item都有缩略图,且有子标签,子标签作为子目录,我们看看缩略图和高清图的区别吧。所以我们可以从缩略图页面即可得到高清img的地址。每一个大的分类都是一个个分页好了,全部分析完毕,ok完整测试代码如下:import timefrom concurrent.futures import ThreadPoolExecutori原创 2020-12-28 04:41:58 · 4723 阅读 · 1 评论 -
Python《必应bing桌面图片爬取》
桌面壁纸,来自于bing,必应的壁纸网址。https://bing.ioliu.cn/每一页都有12张照片,每个照片有对应的download高清大图的地址,有多个分页。但是,麻烦的是打开后,按不了F12,于是用python直接爬取页面,才发现是这样的。123就是F12的code,这个网址禁止了F12,禁止了ctrl+shirt+i,禁止了ctrl+s。但是这不影响啊,我们用urrlib.request可以获得整个页面的信息。每个图片的文本描述信息是在< h3>元素里的。每个图片的下原创 2020-12-26 03:47:22 · 1931 阅读 · 1 评论 -
Python《回车桌面图片》
今天我们爬取另一个壁纸网站https://tu.enterdesk.com/进入首页后:可以发现有很多的分类,我们直接按照分类来分别爬取。比如点击一个分类【美女】。https://tu.enterdesk.com/meinv/会有很多的照片条目。然后不断往下翻的时候也是不断在刷新更新,经观察network的XHR会发现,每一次的异步请求都是一个html页面哈。分析url如下:https://tu.enterdesk.com/meinv/https://tu.enterdesk.com/mei原创 2020-12-26 02:35:12 · 1312 阅读 · 1 评论 -
Python《爬取手机和桌面壁纸》
此次爬取壁纸网站,此网站全是静态的,没有反爬虫手段,感觉是适合新手练手。http://www.win4000.com/mobile.htmlhttp://www.win4000.com/wallpaper.html分别是手机壁纸和桌面壁纸。比如点开手机壁纸,我们会发现有很多标签。点开其中的标签,进入到该标签页。发现有很多的图片组,且包含有分页。再最后点击某个图片组可以发现有多张高清壁纸一个组图中,html页面的url是有规律的。http://www.win4000.com/mob原创 2020-12-25 03:21:24 · 583 阅读 · 5 评论 -
Python《通过解析http请求搞定动态加载,爬取toutiao图片》
今天我们下载头条的图片内容。进入头条首页,我们根据关键词搜索。发现有搜索出很多的条目,而且条目是根据鼠标往下滑动的时候就会动态加载出来,是动态更新的,之前我们曾使用过Selenium进行模拟鼠标滑动,一次性获得了很多的条目,最后再把所有页面的对应图片组的入口找出来,而今天我们试图用分析http request请求的方式来搞一次,每一次动态加载都是一次请求,所以我们来试图分析分析请求,看看能不能做出来。每一个条目点击进去能看到相应的文章里面有很多图片,说明是一个图片组。好了,看了大概的内容展示后,原创 2020-12-24 08:13:34 · 640 阅读 · 0 评论 -
Python《搞事情==蜂-鸟-图-片(二)》
今天我们来爬取另外个网站https://tu.fengniao.com/ 没错就是这个地址,不用翻其他的标签栏,,这个网站最大的特点就是一直往下翻都会有一个加载的操作,不断加载新的图片上去。可以试着滑动鼠标不断往下翻,不断往下翻,不断往下翻。。。。与上一篇博文不同的是,我们不是拿到第一张图片点进去,然后while循环去找下一张图片,今天我们换了个大标签,仔细发现网站的url也不一样了,而且我们今天是使用selenium来模拟实现鼠标的往下滑动,这样全部的图片group就能拿到了,这样我们就可以使用正常的原创 2020-12-22 08:55:01 · 239 阅读 · 3 评论 -
Python《搞事情==蜂-鸟-图-片(一)》
今天我们来爬取另外个网站https://photo.fengniao.com 没错就是这个地址,不用翻其他的标签栏,,这个网站最大的特点就是一直往下翻都会有一个加载的操作,不断加载新的图片上去。可以试着滑动鼠标不断往下翻,不断往下翻,不断往下翻。。。。总之啊,天荒地老海枯石烂啊,今天我们试着两种不同的方式来搞定它。下一博文写另外一种方法来搞定。在“图库”有多的子标签,按照子标签进一步划分。每到一个子标签,点击第一张图片进去。会发现这里又查看原图,下一页等信息,都是可以做直接抓取的。而且按照这原创 2020-12-22 06:22:29 · 313 阅读 · 1 评论 -
Python《突破JS动态加载,成功爬取漫画》
爬取的网址呢,还是上一篇博文涉足的 https://www.dmzj.com/ 但是这一次,我们使用selenium来获得每个章节的所有图片,因为动态网页比如常见的js动态生成,用静态方法访问网站并且获取html时,js动态生成的这一部分还没有生成,所以静态方法获取不了这一部分信息。selenium的webdriver,我个人理解webdriver是模拟用户用浏览器访问网络,只不过不是用户亲自用鼠标是双击,而是用的代码。在这里本人使用的是Firefox浏览器。这部分代码如下:# 无头浏览器 这样浏览器原创 2020-12-21 06:04:28 · 799 阅读 · 1 评论 -
Python《使用selenium解决动态加载的问题》
爬取的网址呢,还是上一篇博文涉足的 https://www.dmzj.com/ 但是这一次,我们使用selenium来获得每个章节的所有图片,因为动态网页比如常见的js动态生成,用静态方法访问网站并且获取html时,js动态生成的这一部分还没有生成,所以静态方法获取不了这一部分信息。selenium的webdriver,我个人理解webdriver是模拟用户用浏览器访问网络,只不过不是用户亲自用鼠标是双击,而是用的代码。在这里本人使用的是Firefox浏览器。这部分代码如下:# 无头浏览器 这样浏览器原创 2020-12-21 05:52:52 · 1009 阅读 · 0 评论 -
Python《成功破解简单的 动态加载 的爬虫》
今天我们来爬取一个漫画网站这里由于漫画数量过于庞大,于是我就简单地爬取曾经小时候看过的漫画吧。比如下面的五个漫画:先来分析分析,拿《火影忍者》举例:点击进去后可以看到所有的章节罗列。嗯,这个没啥说的了,就是搜索出所有的< a>元素,找出其章节的标签,并且得到具体章节的链接,这个简单。继续点击其中某个章节进去后发现,是存在多个页面的插画,共同组成一个章节,这个总体来说也不难,因为url很有规律,url是递增的,直到共X页面,且每一页只有一张图片,我们只需要跳转到每一页下载一张图就原创 2020-12-20 06:16:58 · 593 阅读 · 1 评论 -
Python《使用Selenium 和pyautogui 实现自动登录淘宝》
有了上一博文学习即基础,这一节想来学习下自动登录淘宝。直接整上测试代码:from selenium import webdriver# import loggingimport timefrom selenium.common.exceptions import NoSuchElementException, WebDriverExceptionfrom selenium.webdriver import ActionChains# logging.basicConfig(level=log原创 2020-12-19 22:45:48 · 1643 阅读 · 1 评论 -
Python《使用Selenium实现自动化操作》
一:准备工作本文不贴任何图片1:先下载安装Selenium ,在conda的环境下直接使用 conda install Selenium2:查看浏览器版本在浏览器地址栏输入chrome://settings/help 则可以查看浏览器版本3:接着需要下载Chrome浏览器驱动,根据自己的浏览器版本,地址如下:https://sites.google.com/a/chromium.org/chromedriver/downloads驱动下载完后放置在一个目录下,比如是:二:测试整起1:登录原创 2020-12-19 22:16:48 · 237 阅读 · 1 评论 -
Python《爬取各种帅哥图片》
今天我们来爬取http://www.shuaia.net/但是我们今天只爬取图片http://www.shuaia.net/tp/ 下面均是分析过程。按照之前的套路,我们先拿到所有的图片分类标签。点击【更多图片】即可得到所有图片的分类点击【动漫图片】的大分类进去得到一整个页面,一个页面有个20个套图。所以我们先来搞定分页,如下:再来对付每一个套图的入口继续点击该套图,进去后发现所有的图片都是在一个网页上,嗯,挺方便。至此,分析完毕。好了,我们先下载一张图片试试水。代码如下:原创 2020-12-19 07:59:17 · 607 阅读 · 3 评论 -
Python《使用lxml解析xpath--爬取konachan》
今天尝试使用 lxml 来解析 xpath的文档,其实也就是html文档了啦。一:lxml和xpathlxml库是一个XML、HTML的解析器,主要用于解析和提取XML、HTML数据。lxml库先将HTML文档解析,然后就可以使用XPath 搜索或遍历HTML文档中的节点。首先得预先安装lxml,conda install lxmlXPath 是一门在 XML 文档中查找信息的语言。XPath 可用来在 XML 文档中对元素和属性进行遍历,而将 HTML文档转换成 XML文档后,就可以用 XPath原创 2020-12-13 05:30:16 · 24243 阅读 · 1 评论 -
Python《爬虫再练手》
今天发现了一个链接,是GitHub 上有哪些优秀的 Python 爬虫项目?https://www.zhihu.com/question/58151047/answer/859783454然后呢我大概扫了一眼,挑选了一个网站来搞,没错就是这个http://girl-atlas.net/首页就是一个分页了每一页的地址很有规律,在根地址上增加”?p=XX”,XX就是页码边贸,可见首页其实也是http://girl-atlas.net/?p=1 ,嗯,验证正确,因此我们只需要把最大页面数字记录下来就能遍原创 2020-12-13 04:37:28 · 570 阅读 · 0 评论 -
Python《第一次爬虫遭遇反盗链(下)》
上一篇博文,我遇到了防止盗链的问题,防盗链原理http标准协议中有专门的字段记录referer一来可以追溯上一个入站地址是什么二来对于资源文件,可以跟踪到包含显示他的网页地址是什么因此所有防盗链方法都是基于这个Referer字段防盗链的作用在很多地方,如淘宝、拍拍、有啊等C2C网站,发布商品需要对宝贝进行描述,就需要图片存储,而为了使自己辛辛苦苦拍摄的图片不被别人调用,就需要防盗链的功能。提供防盗链的图片网站很多,如有照片、又拍网、百度相册、QQ相册、网易相册等等,但是既能支持网店外链,又有原创 2020-12-12 05:05:10 · 418 阅读 · 0 评论