自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(39)
  • 收藏
  • 关注

原创 【Power BI】矩阵图如何横向显示

如果让值分上下两行摆放,Values>下方有一个show on rows按钮打开,如果是关闭,则两行数据在同一行显示,左右摆放。Outline>frame,即可全部加上边框,不用只选择上下,左右。横向表格选矩阵图Matrix,表格只能是放列数据。

2024-05-20 17:42:28 233

原创 【POWER BI】条件格式-底纹 背景色

背景色-选中要图颜色的字段,然后点击背景色的fx进行设置。

2024-05-20 13:21:03 362

原创 数据报告网站

[置顶]课代表来了!Top 10:报告查一查。http://report.seedsufe.com/#/indexTop 9:Khan Academyhttps://www.khanacademy.org可汗学院-网易公开课https://open.163.com/khan/Top 8:见微数据https://www.jianweidata.com/IndexTop 7:HyperChartshttps://hypercharts.coTop 6:DannyDatawww.danny

2021-03-18 08:17:49 376 1

原创 国际贸易相关术语-DDP

进口国内地完税后交货DDPDelivered Duty paid(…named place of destination):卖方将货物运至进口国指定地点,可供买方收取时即履行交货义务。卖方负担货物交至该处的一切风险和费用(包括关税、税捐和其他费用,并办理货物进口清关手续)DDP 买卖双方义务卖方:订立将货物按照通常路线和习惯方式运往进口国约定地点的运输合同,并支付运费。在合同规定的时间、地点,将货物置于买方控制之下。承担在指定目的地约定地点将尚未卸下的货物交给买方控制之前的一切费用和风险。自

2020-11-19 10:58:09 635

原创 命令

终端中的命令:Ctrl+A:快速回到行首Ctrl+E:快速回到行末查看ip地址:ifconfig关闭网卡:sudo ifconfig xx down开启网卡:ifconfig xx upPython3 :进入交互模式 exit( )退出交互,用来验证某些知识点Python3文件名.py:运行这个文件ipython3也是交互模式,比python3高端,能自动补全,支持清屏,ls,...

2019-08-13 10:55:37 200

原创 爬虫chrome分析post和json-1-寻找post地址

寻找url地址的两种方法1、在form表单中寻找action对应的url地址post数据是input标签中name的值最为键,真正的用户名密码作为值的字典;post的url地址就是action对应的url地址。以人人网为例,未登录状态下:Elements里的form表单,form里有一个action,即url地址,可通过Ctrl F搜索form点击需要输入用户名密码的左侧窗口,E...

2019-08-13 10:55:13 1069

原创 21、多任务-线程

可以同时有多个锁。

2019-08-13 10:53:29 76

原创 20、多任务-线程-同步概念、互斥锁解决资源竞争问题

上篇文章中子线程之间出现资源竞争的原因是CPU占用问题,一个子线程的代码没执行完就被切换掉,解决此问题的方法是,让代码全部执行完再切换,或者根本不让执行,不能执行到一半切换另一个线程。原则同银行转账,转账时借钱人把钱转出去,但是收款人没收到,杜绝这种情况。...

2019-08-13 10:53:18 180

原创 19、多任务-线程-共享全局变量产生的问题资源竞争

共享全局变量会产生资源竞争前一篇文章中的代码没产生资源竞争,因为一个写一个读。命令:cp 02-多线程共享全局变量2.py 03-共享全局变量产生的问题-资源竞争.pyvim 03-共享全局变量产生的问题-资源竞争.py03-共享全局变量产生的问题-资源竞争.py代码解读:for i in range(num):表示下面的 g_num += 1代码执行num次,num将来传...

2019-08-13 10:53:09 272

原创 18、多任务-多线程共享全局变量-通过main函数传递参数

通过main函数传递参数给子线程,传什么内容都可以,但是必须是一个元组注意事项:格式化输入内容,是%s 而不是s%通过main函数传递元组参数给其他函数,元组中要加逗号,即args=(g_nums,)threading.Thread中的参数 t1 = threading.Thread(target=test1,args=(g_nums,))#target指定这个线程将来去哪个函数执...

2019-08-13 10:53:00 749

原创 17、多任务-多线程共享全局变量

如何区分全局变量和局部变量:一个写在函数里面,一个写在函数外面。如果要在函数里面修改全局变量:不用必须加globalvim 06-函数里面修改全局变量.pynum = 100def test(): global num num += 100print(num)test()print(num)以上代码执行的结果,第一次打印是100,调用test...

2019-08-13 10:52:47 407

原创 16、多任务-线程-创建线程的两种方法-创建类继承Thread类

类的特点:封装、继承、多态创建一个MyThread类,这个类必须继承Thread类,必须有一个run方法,也可以有其他的方法,通过MyThread类创建一个对象t,因为是继承,所以t也有start方法用t = MyThread()来代替原来的t = threading.Thread(target=函数名)来创建对象t.start()会自动调用MyThread类的run方法综上,线程运行有...

2019-08-13 10:52:22 156

原创 15、多任务-线程-查看正在运行的线程

在ipython3中测试知识点:threading中的enumerateenumerate得到的结果是一个元组,可以通过拆包得到序号和内容enumerate不仅可以得到子线程的数量还可以得到它本身03-查看线程数.py命令:按下esc到命令模式w:向右跳一个单词(word)b:向左跳一个单词按i进入编辑模式,删掉不需要的内容,重新输入代码解读:for i in ran...

2019-08-13 10:52:13 148

原创 14、多任务-线程-主线程、子线程执行原理

如何实现多任务?利用threading模块里的Thread类来实现。类名后面加一个括号,表示创建一个对象,这个对象就是将来启动的线程t = threading.Thread(target=saySorry) # t指向了实例对象t.start() # 启动线程,让线程开始执行线程是实现多任务的一种手段。一个程序运行起来之后,肯定有一个执行代码的东西,这个东西就叫做线程。当代码执...

2019-08-13 10:52:03 181

原创 13、多任务-多任务介绍

linux 是一个多用户多任务的操作系统。通过SSH可以多人同时远程操作一台电脑,同时打开多个客户端就是多任务。多任务:多个函数一起跑。vim 01-没有多任务的程序.py思路:调用main函数,在main函数里调用两个函数.for i in rang(5): rang(5)表示从0到4循环五次,要想5秒,就用time.sleep(1),表示延时1秒,用到time就导入time模...

2019-08-13 10:51:54 128

原创 2、网络编程- Udp发送数据

demo:编写程序linux中写程序不一定用pycharm用pycharm或者vim或者sublime编辑器Sublime编辑时:保存到一定次数是会提醒是否购买;右下角按钮可以选择语言;鼠标移动到上方会看到菜单栏,“首选项”中有配色方案-改完之后菜单栏如果不见了,重新开一下;支持拖放文件夹到编辑器左侧;Sublime中保存:CTRL+S按住Ctrl和加号:放大字体**Udp发送数...

2019-08-13 10:51:20 465

原创 12、python网络编程-tcp注意事项

网络开发一般两种:udp tcp搞网络安全的一般会用特殊的,但大部分程序一般都是udp tcp完成网络通信的两种方式:流程很重要,里面的参数不重要,忘记可以去查询udp:1、socket2、bind3、send to4、recvfrom5、closebind:如果开发的程序用来收数据,一般需要绑定端口,如果用来发数据,自己的端口是什么无关紧要,可以不绑定tcp:区分客户端和...

2019-08-13 10:50:51 147

原创 11、网络编程-tcp文件下载器

举例:用迅雷下载东西,下载前会在本地先建一个文件,下载完把这个文件改名。客户端下载东西时,从服务器上收进一部分数据write进刚才的文件中,收一部分再write进去,当把所有的数据都write完之后意味着下载完成。实质就是抄作业。下载有两部分:服务器是发送方,客户端是下载方。.客户端下载流程:1、下载东西要有网络,肯定有socket套接字2、从服务器下载要connet3、如何让服务...

2019-08-13 10:50:40 153 1

原创 10、网络编程-tcp服务器-循环为多个客户端服务(2)

cp 05-tcp服务器.py 06-循环为多个客户端服务.py举例:去银行办业务,先取号,到了号之后去办理业务思路:将accept返回的新套接字的部分进行while True,然后对打印的内容进行格式化。注意事项:recv返回的仅仅是内容,打印时需要进行解码;recvfrom返回的是内容和addr。监听套接字不能放到while True里面,否则就会造成监听套接字关闭,不...

2019-08-13 10:50:31 207

原创 9、网络编程-tcp服务器(1)

1、创建套接字2、bind绑定ip和port作为服务方,ip port 应该是固定的,所以要绑定;客户端一般不绑定3、listen使套接字变成监听套接字,即变为被动链接4、accept等待客户的链接生活中的电话机“1、买手机2、插上手机卡3、设置成响铃状态,否则别人打电话听不到4、接听电话-等待别人打进来**1. **vim 05-tcp服务器.py思路:用注释搭建流程...

2019-08-13 10:50:22 847

原创 8、网络编程-TCP客户端

tcp严格区分客户端和服务器,udp不区分,收recvfrom 发sendto服务器:玩游戏登录时先选择大区,即选择服务器,越近越不卡。提供服务的程序即服务器。客户端:QQ软件、微信都是客户端,腾讯的服务器是服务器tcp客户端流程:1、创建套接字2、链接服务器3、收发数据4、关闭套接字1. 04-tcp-客户端.py命令:终端中vim 04-tcp-client.py...

2019-08-13 10:50:12 145

原创 7、网络编程-TCP简介

tcp:传输控制协议。打电话模型,更稳定,也会丢收据,但是对方没收到时,会再发一次,有补救措施。拨号,首先建立两个电话之间的通道,即通信之前建立链接,收发数据,关闭链接,比udp复杂一定,但稳定。应答机制,如果没收到,会超时重传。场景:迅雷下载东西的同时还会多多少少上传数据,迅雷采用的是tcp应答机制京东、淘宝、刷票都是tcp,否则付款后收不到货。udp:写信模型,ip port 内容,投递...

2019-08-13 10:49:52 857

原创 6、网络编程-udp聊天器(2)

思想:先模仿程序再创造终端中:vim 02案例:udp聊天器.py打开终端开始写代码,写代码的先后顺序如下代码块:函数与函数直接空两行,函数与if之间空两行或者一行def main():if __name__ == "__main__": main()按下i开始进入编辑模式,main函数一般是完成主体功能思路:大体要完成的功能:1、发数据2、收数据并打印出来具体要完...

2019-08-13 10:49:42 166

原创 5、网络编程-udp聊天器(1)

首先在终端中查看前面已经创建的文件,命令:ls:查看当前目录下的文件tree 文件名:查看改文件下的目录把python-03文件夹下的02文件复制到pyhton-04文件夹下:cp python-03/ 02发送任意数据给windows中调试助手.py python-04/然后cd到python-04中,ls查看刚才复制的文件已经过来了,给文件改名字:mv 02发送任意数据...

2019-08-13 10:49:31 1923

原创 4、网络编程- udp端口绑定问题

udp发送数据时,并没有绑定端口,程序每次运行时系统会随机分配一个端口,如果不退出,会一直用这个端口来发送消息,退出程序重启后,系统会再次分配一个随机端口,所以发送消息时,可以绑定端口,也可以不绑定,如果绑定,代码如下:cp 03循环发送数据.py 08绑定端口循环发送数据.py1、8绑定端口循环发送数据.pyimport socketdef main(): #创建一个udp套...

2019-08-13 10:49:21 2212 1

原创 3、网络编程- Udp接收数据

udp接收数据,网络调试助手担任发送方,但发送时需要对方的也就是虚拟机的ip 和端口,ip可以通过config获取,那么如何让一个程序拥有一个固定端口呢?创建套接字的时候是没有端口号的,好比买了手机没有手机号,别人是找不到你的,所以要有一个固定的端口号,用udp_socket.bind()绑定一个端口接下来写程序,终端中:vim 05 绑定端口用来接收数据.py写程序的思路: if...

2019-08-13 10:49:10 236

原创 1、网络编程-基本概念

网络编程一、基本概念终端中:Ctrl+A:快速回到行首Ctrl+E:快速回到行末查看ip地址:ifconfig关闭网卡:sudo ifconfig xx down开启网卡:ifconfig xx upIp v6:还没火起来,目前用的都是ip v4Ip v4:256256256*256网络号+主机号(0-255):理论上有256种,0和255不能用,一个小公司同一个网络号最多...

2019-08-13 10:48:55 1007

原创 爬虫-6-字符串知识复习

字符串类型byte传输过程中都是二进制传输的,爬虫中用到最多的就是字符串,url提取,数据入库等。str肉眼不方便看二进制,比较方便查看str类型bytes和str互相转换在ipython3交互模式中查看字符串类型type(字符串)a = “你好”b = a.encode()str转bytesa.encode()bytes转strb.decode() --...

2019-08-13 10:48:12 89

原创 爬虫-5-URL格式和http格式

URL格式说明:协议URL地址都有协议,有的看不到,但是在网址栏复制后粘贴到浏览器搜索框就可以看到参数?开头&结尾的就是URL参数,很多时候参数没用,可以删掉,不影响页面内容。anchor锚点(主播)后面爬取直播网址,可以用anchor爬取主播名字,前端讲过。带锚点的URL,实现页面跳转,跳转到对应的位置。带锚点和不带锚点请求的URL对应的响应是一致的。后面爬虫的时候...

2019-08-13 10:48:00 546

原创 爬虫-4-浏览器发送http的过程

复习:http和https,django flask中讲到过为了更好的模拟浏览器发送请求http概念超文本传输协议,协议:客户端向服务端请求数据,要有一定的格式,每行都有特定的格式。数据都是明文进行传输默认端口号:80在搜索引擎地址栏中输入网址,有的网址是http://,如果请求网站时不写端口,会默认是80,写上80效果也是一样的,例如:http://news.ifeng.com...

2019-08-13 10:47:44 93

原创 爬虫-3- GitHub markdown

#越多,字号越小下载一个增强版插件:Markdown Preview Enhanced,可实现左边写,右边预览的功能#:#越多,字号越小“- ”横线加空格,就会出现前面有小黑点的列表`反引号,三个反引号连起来,中间可以写代码以上功能跟本编辑器中的功能相同。...

2019-08-13 10:47:30 116

原创 爬虫-2-爬虫的流程及工作原理

爬虫的分类通用爬虫:搜索引擎的爬虫,整个互联网聚焦爬虫:针对特定网址的爬虫如果要实现一个和百度新闻一样的网站应该如何做?把天天生鲜的数据替换成新闻数据。用爬虫爬取新浪新闻后,用django项目呈现出来即可。聚焦爬虫工作原理URL地址 ,如果有多个URL,放到列表中 url list响应内容:发送请求:request模块,静态、动态HTML,接收HTML数据 含有标签不需要,还有一...

2019-08-13 10:47:16 264

原创 爬虫-1-基本概念

1、复习2、用request模块发送请求接收响应,从响应中提取数据。3、数据提取方法。静态HTML页面4、动态网页提取数据。前端、flask讲过静态HTML页面:不是通过js加载上去的动态HTML页面:通过js加载上去的5、mogdb6、scrapy爬虫框架 ,通过框架可以使爬虫跟快一些7、scrapy redis爬虫框架基础知识:1、爬虫应用场景数据呈现、数据分析大数...

2019-08-13 10:46:47 97

原创 爬虫requests库-2-requests模块发送带headers的请求和带参数的请求

发送简单的请求response = requests.get(“url”)response常用方法response.textresponse.contentresponse.status_code(获取状态码,如果返回200,说明请求的某个URL成功,并不能说明当前URL请求成功)(用assert response.status_code == 200,断言请求成功)respo...

2019-08-13 10:45:18 1579 1

原创 爬虫requests库-3-爬虫贴吧

首先要观察爬虫的URL规律,爬取一个贴吧所有页的数据,观察点击下一页时URL是如何变化的。思路:定义一个类,初始化方法什么都不用管定义一个run方法,用来实现主要逻辑 3 class TiebaSpider(): 4 def __init__(self): 5 pass 6 7 8 def run(self): ...

2019-08-13 10:45:05 386

原创 爬虫requests库-4-requests模块发送post请求(以百度翻译为例)

哪些地方会用到post请求登录注册,post比get更安全数据放在请求体里,不会放在url地址里。需要传输大文本内容时post请求对数据长度没有要求,url太长,无法使用get发送post请求的用法response = requests.post(“http://www.baidu.com”,data=data,headers=headers)data的形式:字典复习:发...

2019-08-13 10:44:42 1169 1

原创 爬虫requests库-5-requests模块使用代理

什么是代理把web server想象成谷歌服务器,正常教室内无法直接访问,通过VPN软件来访问。代理的分类是否能知道最终服务器的信息:知道:正向代理不知道:反向代理,防止别人攻击网站,即使攻击了也是攻击nginx,重启一下nginx就可以了。爬虫为什么要使用代理?让服务器以为不是同一个客户端在请求防止我们的真实地址被泄露,防止追究责任代理的使用方法requests....

2019-08-13 10:44:26 11576

原创 爬虫reqeuests库-6-使用requests模拟登陆的三种方式-字典推倒式

cookie和session的区别cookie数据存放在客户浏览器上,session放在服务器上cookie不安全session访问增多时会占用服务器性能cookie保存的数据不能超过4K,很多浏览器都设置一个站点最多保存20个cookie爬虫处理cookie和session携带一堆cookie组成cookie池能不使用cookie时尽量不用,速度快,但是如果要获取登录后的页面...

2019-08-13 10:44:01 352

原创 爬虫requests库-1-requests库模块安装发送请求和获取网页的字符串

requests基本介绍requests的作用发送网络请求,获取响应数据中文文档API:https://2.python-requests.org//zh_CN/latest/user/install.html网址最好在Chrome浏览器打开,如果是英文,还可以右击翻译成中文requests的使用发送请求首先导入requests模块,这是一个第三方模块,需要安装,pip in...

2019-08-13 10:43:08 259 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除