学习笔记
kkevinyang
这个作者很懒,什么都没留下…
展开
-
Tableau连接Hortonworks Hadoop Hive
正常流程:使用Tablue创建Hortonworks Hive连接时,会提示跳转到https://www.tableau.com/support/drivers下载然后选择你的系统信息和要下载的驱动时,会提示要到Cloudera下载才行,地址是:https://www.cloudera.com/downloads/hdp.html。但是上面的地址因为是在墙外,还需要注册,折腾半天后死活打不...原创 2020-03-19 17:10:26 · 1149 阅读 · 0 评论 -
设置django的admin中外键的默认值
需求背景基于django admin开发给用户使用的界面,用户在add新的时author这一项会是一个下拉框,而我需要的是让他自动设置为当前用户,最好是不可修改和编辑的,不显示也行所以明确下我的需求就是,让django能够在点击add时自动就设置当前登陆用户为默认作者,而不需要用户选择。第一次尝试:通过这篇文章得知,通过给requert里传参可以设置默认值,只不过是可以编辑的...原创 2018-02-13 15:15:36 · 2774 阅读 · 0 评论 -
python连接impala报错
背景连接器一般使用impyla,但是我发现这个库问题不少,关键报错了看不出来哪里出问题了,着实令人蛋疼!!问题常见的难以解决的报错有: 1. AttributeError: 'TBufferedTransport' object has no attribute 'trans' 2. TypeError: expecting list of size 2 for struct原创 2018-02-06 17:54:39 · 4671 阅读 · 0 评论 -
关于pip使用时的代理设置
使用场景正常网络情况下我们安装如果比较多的python包时,会选择使用pip install -r requirements.txt -i https://pypi.douban.com/simple --trusted-host=pypi.douban.com这种国内的镜像来加快下载速度。 但是,当这台被限制上网时(公司安全考虑)就不能连外网了,如果懒得一个个下载,又懒得找运维开网络权限原创 2018-02-05 11:18:41 · 18093 阅读 · 0 评论 -
关于python的整形(int)自动转长整形(long)的问题
又是需要访问某个接口,其中传入的整形参数可能比较长就会变成long,这时如果用str()的话‘L’就会被转化到字符串中,导致接口不能识别;这种情况下应该优先使用json来转译,可以完美保持翻译python的语法,如下所示:a=[11111111111,22222222222]c=list(a)<<<<<<In [11]: cOut[11]: [11111111111L, 2222222222原创 2017-08-15 12:34:57 · 15908 阅读 · 0 评论 -
Git学习总结
命令总结:git init-变成Git可以管理的仓库git add readme.txt-添加到仓库git commit -m “任务XX”-提交到仓库git status-仓库当前的状态git diff-查看differencegit log-从最近到最远的提交日志cat readme.txt-查看某一文件git reset –hard HEAD^-退回上一个版本git refl原创 2016-09-03 14:06:36 · 847 阅读 · 0 评论 -
python的编码问题
基本概念str和unicode都是basestring的子类关系: str -> decode('the_coding_of_str') -> unicode unicode -> encode('the_coding_you_want') -> strstr是字节串,由unicode经过编码(encode)后的字节组成的unicode才是真正意义上的字符串,由字符组成思路:搞明白要处原创 2016-10-07 21:22:54 · 510 阅读 · 0 评论 -
爬取吉他谱并生成pdf
背景初衷作为一直曾经致力于做文艺青年的爬虫狗,偶尔还是想撸个吉他的,也买过三月通之类的书,但是上面的谱子要么太老,要么太难,所以一直以来斗志利于在网上找谱,打印下来或者用kindle或ipad看,着实方面不少。网站:爱乐谱其中,爱乐谱是我比较喜欢的网站,界面相对简洁直观,并且谱子很清晰,关键都还很简单(在这里不我得不黑一下大伟老师的谱子,虽然好听但是相对复杂对初学者太不友好),对于我这样一个平时没有原创 2016-10-05 11:57:21 · 2684 阅读 · 0 评论 -
UnicodeEncodeError: 'latin-1' codec can't encode character 报错
使用python过程中经常遇到这个报错,从字面又不太好理解什么意思,报错的路径也不太准确不容易找出来,后来经过多次实验,发现大多还是中文编码问题. 常用解决方法如下: 1. 确保开头加上了:reload(sys)sys.setdefaultencoding( "utf-8" )2. 涉及到打开或者保存发送有可能是中文名称的程序时,要加上.encode('utf-8')# 比如filename原创 2016-10-18 15:08:35 · 3814 阅读 · 0 评论 -
扩展Django admin的list_filter()可使用范围
需求描述有时候我们会基于已有数据生成一列在表格中,类似于下面的class BaseSchema(models.Model): ... def test_status(self): # pdb.set_trace() if datetime.date.today() < self.test_start_date: return '原创 2018-03-09 18:46:56 · 7510 阅读 · 0 评论 -
windows7下给python3安装impyla的艰辛历程
安装环境标题已经给出了,linux下和python2下都很容易安装,我也不知道为什么python3反而这么蛋疼。就直接上干货吧,希望其他人少走弯路。安装所需依赖pip install ipython six bit_array thriftpy thrift_sasl==0.2.1 sasl impyla(admin下)常见报错error: command ‘C:\Pro...原创 2018-03-05 11:26:32 · 4974 阅读 · 0 评论 -
supervisor常见报错
第一类:报错信息: error: &amp;amp;amp;lt;class 'socket.error'&amp;amp;amp;gt;, [Errno 2] No such file or directory: file: &amp;amp;amp;lt;string&amp;amp;amp;gt; line: 1解决办法: 这个可能有多种原因,解决步骤如下: 1. 先要确认是否已经启动过了:’ps -ef | grep su原创 2018-06-01 16:43:34 · 33466 阅读 · 12 评论 -
使用brew安装graphviz时报错
a原创 2018-06-05 09:31:25 · 2011 阅读 · 0 评论 -
windows7下给python2安装impyla
开始之前,可以先参考这两篇文章: 1. windows7下给python3安装impyla的艰辛历程 2. python连接impala报错 根据上面文章,我们知道,娇嫩的impyla对于依赖包的版本要求相当高,归结下来就是: pip install ipython six bit_array thrift==0.9.3 thrift_sasl==0.2.1 pure_sasl impyl...原创 2018-04-25 21:45:31 · 727 阅读 · 0 评论 -
python挑战题
思路: python上手最快的是爬虫,也最有成就感,所以本教程教程从爬虫开始,逐步补充个各个部分的知识。正常的学习爬虫的路线:爬整个网页~爬网页中的指定文字(比如新闻的正文)~爬网页中的一个图片~爬网页中的多个图片~爬多个网页的多个文字和图片~爬网页中的视频~爬有反爬的无验证码和登陆的普通网站~爬有反爬的且需要登陆验证码的网站(比如淘宝)~从有反爬技术的网站爬取大量数据主线第...原创 2018-03-26 17:03:51 · 1103 阅读 · 0 评论 -
使用django和mysql时报“ImportError: No module named ‘MySQLdb'”
相关报错还有: - Error loading MySQLdb module: libmysqlclient.so.20: cannot open shared object file: No such file or directory - ImportError: libmysqlclient.so.20 - django import MySQLdb as Database im...原创 2018-03-26 14:26:07 · 378 阅读 · 0 评论 -
禁用django的物理外键(CONSTRAINT,REFERENCES)
背景用django自带的admin和auth搭建了内部网站,使用了django的用户和权限分组系统,但是在移到生产环境时发现公司把REFERENCES这种命令禁止了,DBA说影响性能不给开权限,所以不得不尝试把外键从db层移到应用层。第一次尝试刚开始只找到https://docs.djangoproject.com/en/dev/ref/models/fields/#django.db.models原创 2018-03-14 11:38:07 · 2995 阅读 · 1 评论 -
给安神的python学习指南
主线1.笨方法学python(书)书籍信息:https://book.douban.com/subject/26264642/推荐理由:短小精悍,不讲原理直接上手,飞速刷完一遍(不超过一周即可)就可以尝试做些小demo了2.廖雪峰python教学(网站)地址:https://www.liaoxuefeng.com/wiki/0014316089557264a6b3489...原创 2018-03-06 11:15:58 · 288 阅读 · 0 评论 -
在脚本中单独使用django的ORM模型的方法
有时候在测试django中一些模块时,不想重新跑一整个django项目,只想跑单个文件,正好写在if __name__ == '__main__': 这样也不会打扰到正常的代码逻辑方法正常方法大家都知道的方法就是’python manage.py shell’,当然我知道这可能不是你需要的;更好用的方法在脚本中import模型前调用下面几行即可:import os, sysBASE_DIR = o原创 2018-03-05 15:47:48 · 3527 阅读 · 0 评论 -
Scrapy使用的一些技巧
如果在某个xpath对象下继续使用xpath规则提取, 当提取某个对象下的所有某个对象所有tr标签.html = response.xpath("/html/body")tr = html.xpath(".//tr") #搜索body下的所有tr必须加上'.', 否则搜索的是整个文档的所有tr 如下面代码所示,生成的数据是unicode对象,不能再进行xpath:pic = sel.xpat原创 2016-10-01 20:46:35 · 660 阅读 · 0 评论 -
tornado相关
定义Tornado作为web server,提供了web framework的api,可以来直接构建自己的web程序。同时,Tornado支持WSGI ( http://www.python.org/dev/peps/pep-0333/ ),也就是说它可以有能力其它的一些python的框架一起使用,比如django, bottle, flask等。 不妨看下bottle在不同server下的性能评转载 2016-10-25 20:47:32 · 590 阅读 · 0 评论 -
tornado学习精要
最简单的应用在程序的最顶部,我们导入了一些Tornado模块。虽然Tornado还有另外一些有用的模块,但在这个例子中我们必须至少包含这四个模块。import tornado.httpserverimport tornado.ioloopimport tornado.optionsimport tornado.webTornado包括了一个有用的模块(tornado.option原创 2016-11-04 15:48:29 · 4149 阅读 · 0 评论 -
python入门笔记(Day3)--切片,迭代(器),列表生成式/器,
总结:1切片一个list如下:>>> L = ['Michael', 'Sarah', 'Tracy', 'Bob', 'Jack']>>> L[0:3]['Michael', 'Sarah', 'Tracy']注L[0:3]表示,从索引0开始取,直到索引3为止,但不包括索引3>>> L[-2:]['Bob', 'Jack']>>原创 2016-01-08 00:31:43 · 500 阅读 · 0 评论 -
python入门笔记(Day4)--map,reduce
1 函数式编程>>> f = abs>>> f(-10)10说明变量f现在已经指向了abs函数本身。直接调用abs()函数和调用变量f()完全相同一个最简单的高阶函数:def add(x, y, f): return f(x) + f(y)编写高阶函数,就是让函数的参数能够接收别的函数。2 mapmap()函数接收两个参数,一个是原创 2016-01-09 16:47:48 · 501 阅读 · 1 评论 -
python入门笔记(Day5)--filter,sorted,lambda,装饰,偏,模块
总结:许多东西已经挺复杂很难理解,牵扯到好多以前的内容,以后要多家回顾内容:filter,sorted,返回函数,闭包,lambda(匿名函数),装饰器,偏函数,模块,作用域,第三方模块1 filter在一个list中,删掉偶数,只保留奇数,可以这么写:def is_odd(n): return n % 2 == 1list(filter(is_odd,原创 2016-01-10 16:44:05 · 916 阅读 · 1 评论 -
笨方法学python(ex18--40)--read,seek,help,exit
1read() readline()以及readlines()用法.readline() 和 .readlines() 之间的差异是后者一次读取整个文件,象 .read() 一样。.readlines() 自动将文件内容分析成一个行的列表,该列表可以由 Python 的 for ... in ... 结构进行处理。另一方面,.readline() 每次只读取一行,通常比 .readline原创 2016-01-27 14:35:10 · 784 阅读 · 0 评论 -
笨方法学python(ex1-17)--%,input,解包,读取,写文件
1 %r百分号非常规用法:formatter = "%r %r %r %r" print formatter % (1, 2, 3, 4)将 %r 和 %s 比较一下。注意到了吗?%r 打印出来的是你写在脚本里的内容,而 %s 打印的是你应该看到的内容2input()python3中没有raw_input()函数了,直接用input()代替可在括号中加提示语,如:a原创 2016-01-18 12:24:06 · 3178 阅读 · 5 评论 -
python入门笔记(Day7)--slots,@property,MixIn,定制(str,iter,getitem,getattr,call)枚举(Enum)元type,metaclass,ORM
总结:原来越迷糊,以后肯定需要多加巩固一下内容:__slots__,@property,多重继承,MixIn,定制类(__str__,__iter__,__getitem__,__getattr__,__call__),枚举类(Enum),元类(type()),metaclass,ORM1方法绑定为了给所有实例都绑定方法,可以给class绑定方法:>>> def s原创 2016-01-17 10:53:57 · 1282 阅读 · 0 评论 -
python入门笔记(Day8)--StringIO,BytesIO,环境变量, 操作文件和目录
总结:内容:1 IO--读取文件使用Python内置的open()函数,传入文件名和标示符:>>> f = open('/Users/michael/test.txt', 'r')标示符'r'表示读,这样,我们就成功地打开了一个文件如果文件打开成功,接下来,调用read()方法可以一次读取文件的全部内容,Python把内容读到内存,用一个s原创 2016-02-09 23:17:25 · 1381 阅读 · 0 评论 -
Linux下项目初次同步Github的步骤
Git环境设置Linux创建SSH密钥:ssh-keygen将公钥(文件名是pub结尾,内容是ssh-rsa开头的,找不到可以用ls -al指令)加入到Github账户信息Account Settings->SSH Key()测试验证是否成功:ssh -T [email protected]本地配置: git config --global user.name 'XXXX' git confi原创 2016-09-27 22:38:37 · 2023 阅读 · 0 评论 -
小白初次使用云主机云服务器(腾讯云)
都是按我理解的,主要是边用边记录,我用的是ubuntu的,最低配置 1. 第一步先是找到自己的SSH密钥了,之后在云服务器列表里上选择ssd密钥选项,选择一个主机进行绑定(必须关机才行) 2. 之后就可以在本地终端输入ssh XXXX@...登录你的云主机了(貌似云主机必须是linux的?)其中‘X’代表你的ubuntu系统名,‘*’代表你的云服务器外网IP,例如:ssh ubuntu@115.原创 2016-10-11 21:34:08 · 6546 阅读 · 1 评论 -
python入门笔记(Day2)--默认/可变/关键字/命名字关键字参数
总结:本章只列举了常用的几个函数,其他的要用时临时调取即可,最难得不是这些函数的定义,而是结合不同参数的使用方法。内容:默认参数(aaa(’ ‘)),可变参数(aaa(b)),关键字参数(aaa(c,**b)),命名关键字参数(作为分隔符)转载 2016-08-19 11:09:26 · 2350 阅读 · 2 评论 -
python入门笔记(Day1)--变量,字符(串),tuple,list,set,dict,判断,循环
要点: 学了输入输出数据,变量的区别和字符格式,字符串,tuple,list,set,dict,判断和循环,明天开启函数!总结:通过今天的学习,了解到python中大部分基础还是跟c比较像的,思想也是,第一天也算是顺利。就是看的有些慢了,需要静下心来才行。转载 2016-08-19 10:15:54 · 1124 阅读 · 0 评论 -
创建蓝本后使用flask-migrate无法创建迁移脚本的问题
背景:我是一开始没有使用migrate这个功能,后来学到《Flask web开发》第八章后觉得不能迁移数据库太不方便了,就想回来学习下flask-migrate的使用问题:但是这时候我的hello.py已经使用蓝本分离成manage.py了,关于数据库的信息位于models.py里面,若是直接像书上一样 先输入python manage.py db init创建迁移仓库,显示的还正常:Creati原创 2016-08-08 10:54:01 · 6225 阅读 · 2 评论 -
初用pycharm测试flask时常见报错
使用flask.ext时出错出错信息:ExtDeprecationWarning: Importing flask.ext.bootstrap is deprecated, use flask_bootstrap instead.此错误信息出现在对 flask 进行拓展时导入包的方式上,以下导入包的方式将会产生该错误信息,from flask.ext.script import M原创 2016-08-08 10:23:12 · 13548 阅读 · 2 评论 -
创建和部署flask中有关migrate可能遇到的问题
这篇文章是jtr_109发在cocode中的一篇帖子,感觉看后挺有收获并且以后可能会用到所以转过来了,他的git是https://github.com/jtr109我自己在创建完迁移脚本后(可参考我另一篇关于flask-migrate的文章)执行python manage.py db upgrade进行更新时,发现只出现(base) C:\Users\kai\PycharmProjects转载 2016-08-11 16:23:08 · 16821 阅读 · 3 评论 -
python实例1--用正则表达式爬取静态网页上的图片
本来使用的是python3配合pycharm,但是编码问题一直有问题,最开始时是:TypeError: cannot use a string pattern on a bytes-like object 知道可能是因为python3read()返回的是bytes值而不是string值加encode()提示:AttributeError: 'bytes' object has n原创 2016-02-12 12:18:05 · 6503 阅读 · 0 评论 -
python入门笔记(Day6)--面向对象,实例,封装,继承多态,dir()
总结:内容:1面向对象若采用面向对象的程序设计思想,我们首选思考的不是程序的执行流程,而是Student这种数据类型应该被视为一个对象,这个对象拥有name和score这两个属性(Property)。如果要打印一个学生的成绩,首先必须创建出这个学生对应的对象,然后,给对象发一个print_score消息,让对象自己把自己的数据打印出来。class Student(o原创 2016-01-11 13:22:54 · 604 阅读 · 1 评论