def

爬虫

喜欢而已 提交于 2020-11-23 09:51:27
requests 简介 Python标准库中提供了:urllib、urllib2、httplib等模块以供Http请求,但是,它的 API 太渣了。它是为另一个时代、另一个互联网所创建的。它需要巨量的工作,甚至包括各种方法覆盖,来完成最简单的任务。 Requests 是使用 Apache2 Licensed 许可证的 基于Python开发的HTTP 库,其在Python内置模块的基础上进行了高度的封装,从而使得Pythoner进行网络请求时,变得美好了许多,使用Requests可以轻而易举的完成浏览器可有的任何操作。 1、GET请求 1 # 1 、无参数实例 2 3 import requests 4 5 ret = requests. get ( ' https://github.com/timeline.json ' ) 6 7 print ret.url 8 print ret.text 9 10 11 12 # 2 、有参数实例 13 14 import requests 15 16 payload = { ' key1 ' : ' value1 ' , ' key2 ' : ' value2 ' } 17 ret = requests. get ( " http://httpbin.org/get " , params = payload) 18 19 print ret

python实现杨辉三角

那年仲夏 提交于 2020-11-23 08:50:36
刚刚学python,原来用c++,Java很轻松实现的杨辉三角,现在用python实现,代码是少了,理解起来却不容易啊。 这里主要用到的Python的生成器。 我们都知道Python有列表解析功能,根据表达式可以自动生成列表,如: # 这样就得到了0-9这几个数的平方 my_list = [x**2 for x in range(10 )] print (my_list) # [0, 1, 4, 9, 16, 25, 36, 49, 64, 81] print (type(my_list)) # <class 'list'> 但是列表的大小受内存的限制,如果我们能记录产生数据的算法,那么就不用构造完整的列表,只需要边循环边产生数据。 下面就来创建一个简单的生成器: # 创建一个简单的生成器 gen = (x * x for x in range(10 )) print (type(gen)) # <class 'generator'> for item in gen: print (item, end= " " ) # 0 1 4 9 16 25 36 49 64 81 除了用for遍历生成器对象,还可以用next()函数进行遍历 # 创建一个简单的生成器 gen = (x * x for x in range(10 )) print (type(gen)) # <class

2016年第七届蓝桥杯JavaB组省赛试题解析

故事扮演 提交于 2020-11-23 07:19:26
题目及解析如下: 题目大致介绍: 第一题到第三题以及第六题、第七题是结果填空,方法不限只要得到最后结果就行 第四题和第五题是代码填空题,主要考察算法基本功和编程基本功 第八题到第十题是编程题,要求编程解决问题 第一题 煤球数目(结果填空) 此题是一个找规律的题,规律比较好发现,第1层就是1,第二层就是1+2,第三层就是1+2+3,第n层就是1+2+3+、、、+n 但是注意看清楚题意,题目要求的是100层的总共的煤球数,不是求第100层的煤球数! 1 /* 2 有一堆煤球,堆成三角棱锥形。具体: 3 第一层放1个, 4 第二层3个(排列成三角形), 5 第三层6个(排列成三角形), 6 第四层10个(排列成三角形), 7 .... 8 answer: 171700 9 */ 10 public class t1 { 11 private static int f( int n){ // 算第n层有多少个 12 int res = 0 ; 13 for ( int i=1; i<=n; i++ ){ 14 res += i; 15 } 16 17 return res; 18 } 19 20 private static int cal( int n){ 21 int res = 0 ; 22 for ( int i=1; i<=n; i++ ){ 23 res += f(i); 24

7.博客系统| 评论功能(文章评论,评论的评论)

纵然是瞬间 提交于 2020-11-23 05:58:17
根评论:对文章的评论; 子评论:对评论的评论; 区别:是否有父评论。 评论的流程:   1构建样式   2提交根评论   3显示根评论     --------render显示     --------Ajax显示   4提交子评论   5显示子评论     --------render显示     --------Ajax显示   6评论树的显示     楼层结构:     111     222     333     树形结构:(有父子关系,楼层的深度、层级)         111         222           444             555         333 1.评论样式 article_detail.html   <div class="clearfix" > //评论和点赞在一行,这是由于点赞和反对做了一个浮动,而评论又在正常文档中,导致它的浮动没有清除;清除浮动在bootstrap里边加个clearfix     <div id=“div_digg...”>   </div> { # 评论样式#} <div class = " comments " > <p>发表评论</p> <p>昵称:<input type= " text " id= " tbCommentAuthor " class="author" disabled= "

python实现抖音多线程下载无水印视频【附源码】

风格不统一 提交于 2020-11-22 14:40:29
昨天发了一个无水印解析,评论说想要多线程下载,还是比较简单的。 py文件同目录下创建url.txt,把链接一行一行复制进去,就能批量下载。 代码中的延时不能去掉,由于是多线程,速度较快,延时很重要。 import re import requests from concurrent import futures import time headers = {'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.96 Safari/537.36'} def download(_url): try: time.sleep(0.3) html3 = requests.head(_url,headers = headers) download_url = html3.headers['Location'] video_file = requests.get(download_url,headers = headers) file_name = download_url.split('=')[-1] print(file_name) except: print('Error') with open(file_name +

Python爬取抖音视频

我们两清 提交于 2020-11-22 14:23:02
最近在研究Python爬虫,顺便爬了一下抖音上的视频,找到了哥们喜欢的小姐姐居多,咱们给他爬下来吧. 最终爬取结果 好了废话补多说了,上代码! 1 # https://www.iesdouyin.com/aweme/v1/aweme/favorite/?user_id=86371592618 2 # &count=21&max_cursor=0&aid=1128&_signature=fBZqMxAcIH.WOSqz4s5eTHwWai&dytk=6849c66ff2a629554679fe#e4ad1343a5 3 # 分析url https://www.iesdouyin.com/share/user/86371592618 4 # 最终获取用户喜欢 5 import requests 6 7 url= " https://www.iesdouyin.com/share/user/86371592618 " 8 # 抖音本身反爬虫措施 9 headers= { 10 ' user-agent ' : ' Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36 ' 11 } 12 # 获得dytk 13

一篇文章带你了解CSS3按钮知识

蓝咒 提交于 2020-11-22 09:50:48
在实际开发中,按钮的应用是必不可少。使用 CSS 来制作按钮,可以更有新意,更有趣,也可以自定义自己想要的样式。 一、平面样式CSS按钮 平面样式按钮的使用现在非常流行,并且符合无处不在的平面设计趋势。,这些的平面样式按钮效果很好看。 以下代码是按钮处于正常的情况下的状态。 例: .button { background-color: #4CAF50; /* Green */ border: none; color: white; padding: 15px 32px; text-align: center; text-decoration: none; display: inline-block; font-size: 16px; } 1. 按钮颜色 颜色:Green ,Blue, Red, Gray ,Black。 可以使用 background-color 属性来设置按钮颜色。 例 .button1 { background-color: #4CAF50; } /* Green */ .button2 { background-color: #008CBA; } /* Blue */ .button3 { background-color: #f44336; } /* Red */ .button4 { background-color: #FFC0CB; color:

Django Form表单组件

风流意气都作罢 提交于 2020-11-22 08:06:28
Django Form表单组件 Form介绍 我们之前在HTML页面中利用form表单向后端提交数据时,都会写一些获取用户输入的标签并且用form标签把它们包起来。 与此同时我们在好多场景下都需要对用户的输入做校验,比如校验用户是否输入,输入的长度和格式等正不正确。如果用户输入的内容有错误就需要在页面上相应的位置显示对应的错误信息.。 Django form组件就实现了上面所述的功能。 总结一下,其实form组件的主要功能如下: 生成页面可用的HTML标签 对用户提交的数据进行校验 保留上次输入内容 普通方式手写注册功能 views.py # 注册 def register(request): error_msg = "" if request.method == "POST": username = request.POST.get("name") pwd = request.POST.get("pwd") # 对注册信息做校验 if len(username) < 6: # 用户长度小于6位 error_msg = "用户名长度不能小于6位" else: # 将用户名和密码存到数据库 return HttpResponse("注册成功") return render(request, "register.html", {"error_msg": error_msg})

JDK源码分析 – String、StringBuilder、StringBuffer

若如初见. 提交于 2020-11-22 07:22:19
String类的申明 public final class String implements java.io.Serializable, Comparable<String>, CharSequence {…} String类用了final修饰符,表示它不可以被继承,同时还实现了三个接口, 实现Serializable接口表示String类可被序列化;实现Comparable<T> 接口主要是提供一个compareTo 方法用于比较String字符串;还实现了CharSequence 接口,这个接口代表的是char值得一个可读序列( CharBuffer , Segment , String , StringBuffer , StringBuilder 也都实现了CharSequence接口) String主要字段、属性说明 /* 字符数组value,存储String中实际字符 */ private final char value[]; /* 字符串的哈希值 默认值0 */ private int hash; /* 字符串的哈希值 默认值0 */ /* 一个比较器,用来排序String对象, compareToIgnoreCase方法中有使用 */ public static final Comparator<String> CASE_INSENSITIVE_ORDER =

WPF拆分字符串,截取字符串关键及,提取字符串有用信息/WPF split/Substring/Replace/remove等用法

亡梦爱人 提交于 2020-11-22 06:59:25
C#截图字符串常用的方法有 split 、Substring、Replace、remove等。 split的使用: 1. Split( Char ()) 返回的字符串数组包含此实例中的子字符串(由指定 Unicode 字符数组的元素分隔)。 根据单个分隔字符用split截取。 例如 复制代码代码如下: string st="GT123_1"; string[] sArray=st.Split(‘_’);// 一定是单引 即可得到sArray[0]="GT123",sArray[1]="1"; 2.利用多个字符来分隔字符串 例如 复制代码代码如下: string str = "GTAZB_JiangjBen_123"; string[] sArray = str.Split(new char[2] { 'j', '_' }); foreach(string e in sArray) { Console.WriteLine(e); } 得到sArray[0]="GTAZB",sArray[1]="Jiang",sArray[2]="Ben",sArray[3]="123"; 3.Split( String (), StringSplitOptions) 返回的字符串数组包含此字符串中的子字符串(由指定字符串数组的元素分隔)。参数指定是否返回空数组元素。