![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
python
WangGangdan
这个作者很懒,什么都没留下…
展开
-
__name__的用法
__name__ 是当前模块名,当模块被直接运行时模块名为 __main__ 。这句话的意思就是,当模块被直接运行时,以下代码块将被运行,当模块是被导入时,代码块不被运行。程序入口对于很多编程语言来说,程序都必须要有一个入口,比如 C,C++,以及完全面向对象的编程语言 Java,C# 等。如果你接触过这些语言,对于程序入口这个概念应该很好理解,C 和 C++ 都需要有一个 main 函数来作为程序的入口,也就是程序的运行会从 main 函数开始。同样,Java 和 C# 必须要有一个包含 Main 方转载 2020-11-25 16:53:05 · 13315 阅读 · 2 评论 -
Python之urlib库的基本使用(填坑)
以下为个人在学习Python过程中做的笔记总结之爬虫常用库urllib前言urlib库为python3的HTTP内置请求库urilib的四个模块:urllib.request:用于获取网页的响应内容urllib.error:异常处理模块,用于处理异常的模块urllib.parse:用于解析urlurllib.robotparse:用于解析robots.txt,主要用于看哪些...原创 2018-08-18 17:43:49 · 4500 阅读 · 0 评论 -
Jupyter Notebook 快速入门
Jupyter NotebookJupyter Notebook(此前被称为 IPython notebook)是一个交互式笔记本,支持运行 40 多种编程语言。在本文中,我们将介绍 Jupyter notebook 的主要特性,以及为什么对于希望编写漂亮的交互式文档的人来说是一个强大工具。Jupyter 主界面在开始使用 notebook 之前,我们先需要安装该库。你可以在 ...原创 2018-08-15 16:32:06 · 505 阅读 · 0 评论 -
python网络爬虫实例:Requests+正则表达式爬取猫眼电影TOP100榜
一、前言最近在看崔庆才先生编写的《Python3网络爬虫开发实战》这本书,学习了requests库和正则表达式,爬取猫眼电影top100榜单是这本书的第一个实例,主要目的是要掌握requests库和正则表达式在实际案例中的使用。二、开发环境运行平台: Windows 10 Python版本: Python3.6 IDE: PyCharm三、爬取思路抓取单页内容正则表达...原创 2018-08-07 14:03:11 · 3730 阅读 · 1 评论 -
有趣的代码:一行Python代码能干嘛?
前言python有很多优雅有趣的代码写法,同时还很简短,以至于当我刚开始接触这个编程语言的时候,就爱不释手。而前几天的编程语言榜单中python也超越了java成为了第一,挺替python开心的。python到底有多有趣呢?一行代码告诉你!正文1)画爱心print('\n'.join([''.join([('WangGangdan'[(x-y)%10]if((x*0...转载 2018-08-02 13:44:07 · 88923 阅读 · 13 评论 -
python网络爬虫:股票数据定向爬取
百度股票(https://gupiao.baidu.com/stock/)属于静态网页数据,适合定向数据爬取;新浪股票(http://finance.sina.com.cn/stock/)数据存取在js文件中,属于动态数据,不适合定向爬取,所以选择百度股票(https://gupiao.baidu.com/stock/)作为爬取对象。PS:Robots协议没有禁止网络爬虫步骤说明步骤1: ...原创 2018-07-21 00:32:03 · 5106 阅读 · 2 评论 -
Window 下安装Redis Desktop出现电脑缺少MSVCP140.dll等,解决方法
前言最近在看崔庆才先生写的《python3网络爬虫开发实战》中Redis和Redis Desktop环境配置中遇到了点小麻烦,将解决方法分享给大家,或许能帮到遇到同样问题的同学安装过程一、安装Redis首先找到Redis的安装地址https://github.com/MSOpenTech/redis/releases。然后点进去找到.msi文件下载安装安装过程很简单不详...原创 2018-07-25 22:05:35 · 5734 阅读 · 5 评论 -
python网络爬虫五个小实例
实例一爬取京东商品信息import requestsurl="https://item.jd.com/6946605.html"try: r=requests.get(url) r.raise_for_status() r.encoding=r.apparent_encoding print(r.text[:1000])except: pri...原创 2018-07-19 18:22:05 · 25014 阅读 · 9 评论 -
Python基本数据类型(笔记)
在了解基本数据类型的时候,我们需要了解基本数据类型有哪些?数字int、布尔值bool、字符串str、列表list、元组tuple、字典dict等,其中包括他们的基本用法和其常用的方法,这里会一一列举出来,以便参考。然后我们还需要了解一些运算符,因为这些基本数据类型常常会用于一些运算等等。一、运算符 运算通常可以根据最终获得的值不同,可以分两类,即结果为具体的值,结果为bool值,那么...转载 2018-07-13 16:35:46 · 448 阅读 · 0 评论 -
python淘宝商品比价定向爬虫
要求(目标)利用requests、re库爬取 淘宝商品搜索“机械键盘”页面前两页,将商品价格、商品名称按顺序表格形式输出实现代码#CorwTaoBaoPrice.pyimport requestsimport re#获取页面函数def getHTMLText(url): try: r=requests.get(url,timeout=30) ...原创 2018-07-18 23:49:46 · 4303 阅读 · 7 评论 -
python之正则表达式(基础篇)
前言在向网页进行了提交请求之类的之后,我们可以得到了网页的返回内容,里面自然而然会有我们想要的数据,但是html元素文本这么多,我们不可能一 一去找我们需要的数据,这时就需要用到正则表达式了,正则表达式是学爬虫必须学的内容,而且不止python可以用,java等其他语言都可以用,所以学了好处大大。正文什么是正则表达式?正则表达式就是一个特殊的字符序列,可以用于检测一个字符串...原创 2018-08-22 22:12:44 · 904 阅读 · 0 评论 -
Python之requests库的基本使用(填坑)
前言在使用了urllib库之后,感觉很麻烦,比如获取个cookie都需要分几步,代码又多,又繁,那有没有更加容易点的请求库呢?答案是有的,那就是第三方库requests,这个库的作者是大名鼎鼎的kennethreitz,创作这个库的原因就是想让python开发者更加容易地发起请求,处理请求。里面还有个名字:HTTP for Humans,顾名思义,就是用来请求http的。想看源代码的可以在gi...原创 2018-08-19 00:50:17 · 2257 阅读 · 0 评论 -
python之正则表达式(复杂篇)
前言继上篇文章说了正则表达式的基础用法,那今天我们就继续说一下正则表达式的复杂的用法。好了,废话不多说,直接进入正题。正文情景:当你想要匹配一个qq号,qq号码长度为5-10位,那根据上篇文章的说法,很容易就可以想到该正则:[0-9]{5,10}这样是可以的,但是当你匹配一个长度大于10的号码时就会出错,这时就会去该字符串的前10个数字出来,如下:import ...原创 2018-08-22 23:06:18 · 2027 阅读 · 0 评论 -
使用Python打造基本WEB漏洞扫描器(三) 基于爬虫开发XSS检测插件
一、实验说明1.1 实验内容本节会基于上节开发的插件框架,讲解xss漏洞形成的原理,据此编写一个简单的XSS检测插件,先上效果图。1.2 实验知识点XSS基础知识XSS检测原理1.3 实验环境Python 2.7win10PyCharm二、开发准备xss攻击原理什么是XSS?跨站脚本攻击(Cross Site Scripting),为不和层叠样式表(Casca...原创 2019-03-11 16:35:17 · 9810 阅读 · 4 评论 -
使用Python打造基本WEB漏洞扫描器(一) 网站爬虫+SQL注入检测
一、实验介绍扫描器需要实现功能的思维导图:1.1 实验内容编写一个简单的多线程爬虫,用于对网站地址进行爬取,编写一个简单的sql注入工具,用于对网站地址进行sql注入的检测。1.2 实验知识点多线程的使用网站爬虫的基本知识SQL注入的基本原理SQL检测工具编写,多参数URL的sql注入检测正则表达式的基本知识1.3 实验环境Python 2.7Win10PyCha...原创 2019-03-07 18:00:04 · 19326 阅读 · 13 评论 -
使用Python打造基本WEB漏洞扫描器(二) 爬虫插件系统的开发—E-Mail收集插件实列
一、实验介绍1.1 实验内容基于上节的爬虫,在爬虫的基础上增加一个插件系统,通过爬虫爬取网页链接后调用这个插件系统中的插件进行各种操作,本节也会写个简单的email收集插件作为列子,后面也会讲到如何写各种基于爬虫的插件。1.2 实验知识点python中__import__函数python如何写一个插件系统简单正则的运用(email查找)扫描器插件系统的工作流程1.3 实验环境...原创 2019-03-08 21:39:10 · 4125 阅读 · 0 评论 -
Python中yield的用法详解——最简单,最清晰的解释
前言首先我要吐槽一下,看程序的过程中遇见了yield这个关键字,然后百度的时候,发现没有一个能简单的让我懂的,讲起来真TM的都是头头是道,什么参数,什么传递的,还口口声声说自己的教程是最简单的,最浅显易懂的,我就想问没有有考虑过读者的感受。正文接下来是正题:首先,如果你还没有对yield有个初步分认识,那么你先把yield看做“return”,这个是直观的,它首先是个return,普通的r...转载 2019-03-01 10:23:40 · 498 阅读 · 2 评论 -
Python 爬虫复习之爬取笔趣阁小说网站(不用正则)
前言小说网站-笔趣阁:URL:https://www.qu.la/笔趣阁是一个盗版小说网站,这里有很多起点中文网的小说,该网站小说的更新速度稍滞后于起点中文网正版小说的更新速度。并且该网站只支持在线浏览,不支持小说打包下载。因此,本次实战就是从该网站爬取并保存一本名为《终极斗罗》的小说,该小说是唐家三少正在连载中的一部玄幻小说。PS:本实例仅为交流学习,支持唐三大大,请上起点中文网订阅。...原创 2019-02-28 18:15:43 · 6030 阅读 · 5 评论 -
小复习3 Python高阶函数之map/reduce
练习一问题利用map()函数,把用户输入的不规范的英文名字,变为首字母大写,其他小写的规范名字。输入:[‘adam’, ‘LISA’, ‘barT’],输出:[‘Adam’, ‘Lisa’, ‘Bart’]:分析解法一:直接利用capitalize()函数。解法二:如果不利用capitalize()函数,可以利用upper(),lower()函数结合切片解决代码实现解法一:# -*...原创 2019-02-24 16:13:24 · 347 阅读 · 0 评论 -
小复习2 Python去除字符串首尾的空格(利用递归与切片)
前言问题利用切片操作,实现一个trim()函数,去除字符串首尾的空格,注意不要调用str的strip()方法:过程分析首先判断字符串的长度是否为0,如果是,直接返回字符串其次,循环判断字符串的首部是否有空格,如果有,去掉空格,再判断字符串的长度是否为0,如果是,直接返回字符串然后,循环判断字符串的尾部是否有空格,如果有,去掉空格,再判断字符串的长度是否为0,如果是,直接返回字符串...原创 2019-02-23 19:54:45 · 650 阅读 · 0 评论 -
小复习1 Python求解一元二次方程解(自定义函数)
前言本文实例讲述了Python编程实现数学运算求一元二次方程的实根算法。分享给大家供大家参考,具体如下:问题请定义一个函数quadratic(a, b, c),接收3个参数,返回一元二次方程:ax² + bx + c = 0的两个解。过程分析此题主要考的是对一元二次方程的理解,首先a不能为0,其次再分析b**2-4*a*c,若b**2-4*a*c<0无实根,若b**2-4*a*...原创 2019-02-23 18:03:49 · 5565 阅读 · 1 评论 -
python3.6.5 读入txt文件报错('utf-8' codec can't decode byte 0x8b in position 60: invalid start byte)的解决
python3.6.5 读入txt文件:报错:‘utf-8’ codec can’t decode byte 0x8b in position 60: invalid start byte原因:txt文件的编码格式与python读入文件的指定的encoding参数不一致,encoding参数默认为 ANSI解决方法:1.调整你的txt 的编码格式文件——另存为—...原创 2018-07-11 22:27:38 · 2531 阅读 · 0 评论 -
python爬取中国最好大学排名(实例)
要求爬取2018年最好大学网上排名前20的学校,以表格形式输出,包括(排名,学校名称,总分)代码根据基本要求可以编写出初始代码A#CrawUnivRankingA.pyimport requestsfrom bs4 import BeautifulSoupimport bs4def getHTMLText(url): try: r=req...原创 2018-07-16 16:46:14 · 8355 阅读 · 5 评论 -
win10安装wordcloud安装失败(VC++ 14queshi)解决方法
VC++ 14的缺失问题安装wordcloud时出现报错信息:error: Microsoft Visual C++ 14.0 is required. Get it with “Microsoft Visual C++ Build Tools”: http://landinghub.visualstudio.com/visual-cpp-build-tools 解决方法1.安...原创 2018-07-16 11:15:05 · 2555 阅读 · 8 评论 -
python练习题8:turtle叠边形绘制
turtle叠边形绘制描述**使用turtle库,绘制一个叠边形,其中,叠边形内角为80度。 注意:这不是自动评阅题目,仅用于练习,没有评阅。**输出示例叠边形效果如下: 代码import turtle as tt.setup(650,350,200,200)t.pu()t.fd(50)t.left(-90)t.fd(100)t....原创 2018-06-17 12:43:23 · 14389 阅读 · 3 评论 -
python练习题7:turtle六边形绘制
turtle六边形绘制描述**使用turtle库,绘制一个六边形。 注意:这不是自动评阅题目,仅用于练习,没有评阅。**输出示例六边形效果如下: 代码#跟上一题绘制正方形类似,熟悉turtle库的运用import turtle as tt.setup(650,350,200,200)t.pu()t.fd(50)t.left(-90)...原创 2018-06-17 12:29:58 · 14222 阅读 · 3 评论 -
python练习题6:turtle正方形绘制
turtle正方形绘制描述**使用turtle库,绘制一个正方形。 注意:这不是自动评阅题目,仅用于练习,没有评阅。**输出示例正方形效果如下:代码#绘制方法有很多,主要熟悉turtle库中元素的使用from turtle import*setup(650,350,200,200)pu()fd(50)pd()pensize(5)pen...原创 2018-06-17 12:09:52 · 13972 阅读 · 0 评论 -
Python基本图形绘制-turtle库总结
1:turtle库概述Turtle库是turtle绘图体系的python实现是python标准库2:turtle绘图窗体Turtle.setup(width, height, startx, starty) 设置窗口的位置及其大小例: 3:turtle空间坐标体系turtle.goto(x, y),海龟从当前位置直线移动到(x, y)。例: Tu...转载 2018-06-22 21:03:07 · 9998 阅读 · 0 评论 -
python基本语法 笔记一
一:基础知识1:严格缩进,单引号与双引号功能相同2:字符串的序号字符串的序号可以用两种方式表示-5 -4 -3 -2 -1我 喜 欢 编 程0 1 2 3 43:使用 [] 获取字符串的一个或多个字符索引:返回字符串的单个字符&amp;lt;字符串&amp;gt;[M]例: TermStr = “ABCDE”; TermStr[-1] = E;切片:返回字符串中一...转载 2018-06-18 14:20:16 · 395 阅读 · 0 评论 -
python练习题5:货币转换 I
货币转换 I描述人民币和美元是世界上通用的两种货币之一,写一个程序进行货币间币值转换,其中:人民币和美元间汇率固定为:1美元 = 6.78人民币。程序可以接受人民币或美元输入,转换为美元或人民币输出。人民币采用RMB表示,美元USD表示,符号和数值之间没有空格。注意:(1) 这是一个OJ题目,获得输入请使用input() 输入示例1:RMB123...原创 2018-06-14 19:37:03 · 76914 阅读 · 2 评论 -
python练习题4:温度转换 II
温度转换 II描述温度的刻画有两个不同体系:摄氏度(Celsius)和华氏度(Fabrenheit)。请编写程序将用户输入华氏度转换为摄氏度,或将输入的摄氏度转换为华氏度。转换算法如下:(C表示摄氏度、F表示华氏度) C = ( F - 32 ) / 1.8 F = C * 1.8 + 32要求如下:(1) 输入输出的摄氏度采用大写字母C开...原创 2018-06-14 19:18:09 · 16031 阅读 · 0 评论 -
python练习题3:N的多次方
N的多次方描述编写一个程序,计算输入数字N的0次方到5次方结果,并依次输出这6个结果,输出结果间用空格分隔。其中:N是一个整数或浮点数。print()函数可以同时输出多个信息,采用如下方法可以使用空格对多个输出结果进行分割:print(3.14, 1024, 2048)本平台可以通过input()函数获得测试用例输入,请注意,不要在input()中增加提示信息参数,...原创 2018-06-14 18:53:19 · 15981 阅读 · 2 评论 -
python练习题2:Hello World II (垂直输出)
Hello World II描述垂直输出”Hello World”,全部代码不超过2行。输入无输出HelloWorld代码#方法一:for name in "Hello World": print(name) #方法二:print("H\ne\nl\nl\no\n \nW\no\nr...原创 2018-06-14 18:36:20 · 25826 阅读 · 2 评论 -
python练习题9:turtle同切圆绘制
turtle同切圆绘制描述**使用turtle库,绘制一个同切圆。 注意:这不是自动评阅题目,仅用于练习,没有评阅。**输出示例同切圆效果如下: 代码import turtleturtle.pensize(2)turtle.circle(10)turtle.circle(40)turtle.circle(80)turtle.circ...原创 2018-06-17 12:47:11 · 11118 阅读 · 0 评论 -
python练习题10:长度转换 I
长度转换 I描述请编写程序,完成米和英寸之间的长度转换,基本需求如下:输入英寸,转换成米;输入米,转换成英寸。英寸采用in标记,放在数值结尾;米采用m标记,放在数值结尾。1 米 = 39.37 英寸输入参数请使用input(),不要增加提示字符串信息。输入格式例1: 10m例2: 20in输出格式与输入格式相同,输出结果保留小...原创 2018-06-17 15:31:11 · 5679 阅读 · 0 评论 -
python练习题19:四叶玫瑰数
描述四叶玫瑰数是4位数的自幂数。自幂数是指一个 n 位数,它的每个位上的数字的 n 次幂之和等于它本身。(例如:当n为3时,有1^3 + 5^3 + 3^3 = 153,153即是n为3时的一个自幂数,3位数的自幂数被称为水仙花数)输入格式该题目没有输入。 输入输出示例 示例 输入 输出 示例 1 无 (红色字体只表示输入格式) 3...原创 2018-07-08 23:16:13 · 22323 阅读 · 1 评论 -
python练习题18:合格率计算
描述输入一个数字n作为合格标准,然后,输入一系列的数字,每次输入换行表示,空换行结束,输出合格率。合格率指输入元素中合格元素与全部元素的比值。输入输出示例 示例 输入 输出 示例1 60(enter)50(enter)75(enter)90 (这里有一个换行 ) 合格率为66.67% 示例2 75(enter)65(enter)...原创 2018-07-08 22:59:11 · 4075 阅读 · 4 评论 -
python练习题17:求100以内的素数和
描述求100以内的素数之和并输出。 输入格式该题目没有输入输入输出示例 示例 输入 输出 示例1 无(红色字体不是OJ的输入) 说明:直接输出100以内的素数之和。(红色字体不是OJ的输出)代码num=100i=2qh=0for i in range(2,100): j=2 for j...原创 2018-07-08 22:18:21 · 15019 阅读 · 3 评论 -
python练习题16:整数加减和
描述编写程序计算如下数列的值:1-2+3-4…966其中,所有数字为整数,从1开始递增,奇数为正,偶数为负输入格式该题目没有输入。 输入输出示例 实例 输入 输出 示例1 无 111(仅表示输出样式,不是输出结果)代码N=966qh1=0qh2=0qh=0for i in range(1...原创 2018-07-08 21:30:09 · 4670 阅读 · 0 评论 -
python练习题15:恺撒密码 I
恺撒密码 I描述凯撒密码是古罗马凯撒大帝用来对军事情报进行加解密的算法,它采用了替换方法对信息中的每一个英文字符循环替换为字母表序列中该字符后面的第三个字符,即,字母表的对应关系如下:原文:A B C D E F G H I J K L M N O P Q R S T U V W X Y Z密文:D E F G H I J K L M N O P Q R S T U V W...原创 2018-07-01 22:17:14 · 11330 阅读 · 2 评论