Tag Django

2017

关于这个网站的一些更新

最近几年感觉自己越来越写不出像样的文字,blog也是渐渐荒掉,一直想着怎么给这个个人网站加点新的东西进去。 主要的变化就是增加了图片功能,其实图片功能是早就想要加进去的功能之一,很多时候懒得写字,就会用图片替代。而除了微信朋友圈,我主要发图片的渠道就是 Instagram ,所以一直都很想把 Instagram 上的图片同步到这里来,这样万一日后 Instagram 倒闭了也不用手忙脚乱迁移数据啦。 一开始想要通过 Instagram 公开的API抓取所有的照片数据,以及获取最新的照片更新推送,但是后来发现 Sandbox 模式的API调用限制挺多,而要解除限制只能先提交App进行审核,这对于一个个人网站所需要的功能而言无疑是太麻烦了。于是最后采取的方案是,从 Instagram 网页上抓取所有图片的URL,然后通过 Instagram 的嵌入功能的API(没有调用限制)获得图片的详细信息,比如缩略图、图片说明等等。 于是乎用 Python 写脚本忙乎了半天,终于把所有的 Instagram 照片导入到了这个网站,并且设置 IFTTT,当我在 Instagram po了新照片时,自动将新照片的相关信息推送到这里来,这样就完成了与 Instagram 的同步操作。 然后,鉴于自己越来越写不出文字,于是将blog从首页撤掉,改成跟图片一样的二级目录。首页目前就放了点儿链接和个人介绍,如果以后想到有更好的方案再来修改。 另外,顺便将 Django …

#博客#Django

2012

北邮综合信息查询系统

之前写过一个“北邮本科生成绩查询系统”,写完后就一直没管它,最近期末考试的考表出来了,于是琢磨着给这个系统加点儿功能,比如考表什么的,于是就捣鼓出来这个升级版的“北邮综合信息查询系统”。 依旧采用Django进行开发,但是这次没有部署在OpenShift上,而是直接在我的VPS上部署,感觉比OpenShift使用起来更自由一点。而相对于之前的查询系统,最大的不同应该就是界面了,这次的界面采用了Twitter的bootstrap框架~此外,功能上也增加了很多,请看: 目前实现的功能有: 本学期成绩查询 所有及格成绩查询 所有不及格成绩查询 考表查询 北邮主页新闻 办公布告栏消息 学生布告栏消息 将要实现的功能 空闲教室查询(包括本部&宏福校区) 本学期课表查询 培养方案完成情况 加权成绩计算 其实空闲教室的查询功能已经做好了,但是苦于学校提供的数据源失效,导致查询结果始终是错误的,只好将这个功能暂时关闭。 围观地址:http://byr.moecn.net 依旧使用本科生教务系统(URP)的密码登录,不会保存您的密码,请放心使用~(p.s.我甚至都没有用到数据库= =) 放几张截图吧:-)

#Django#北邮#web

基于Nginx+uWsgi的Django一键部署脚本

在Nginx上使用uWsgi代替FastCGI运行Django不仅性能可以提高数倍,而且还可以具有低内存占用,部署简便等诸多优点。 为了方便在服务器上部署Nginx+uWsgi,我写了个一键部署脚本,在CentOS 6.2上已经成功安装,其他平台目前尚未测试。 注意:在使用此脚本之前需要先安装Nginx,Nginx的安装方法可以自行Google,在此不再赘述。 Django+uWsgi一键安装脚本 下载脚本https://github.com/chon219/Code/blob/master/scripts/uwsgi-install.sh 执行 chmod +x uwsgi-install.sh 给该脚本赋予可执行权限 然后以root身份执行脚本 ./uwsgi-install.sh 根据提示输入网站的根目录路径,比如/home/wwwroot 即可开始安装。 安装完成后,uwsgi服务将会自动添加到系统启动项中,毋须手动添加 管理uWsgi服务 启动uWsgi: /etc/init.d/uwsgi start 停止uWsgi: /etc/init.d/uwsgi stop 重启uWsgi: /etc/init.d/uwsgi restart 注意:每次修改Django应用之后,都需要重启uWsgi服务使新的应用生效。 添加多个Django应用 下载uWsgi-app脚本https://github.com/chon219/Code/blob/master/scripts/uwsgi-app.sh 执行 …

#Django#linux#nginx#CentOS#uWsgi#脚本#web

在Red Hat OpenShift平台部署Django应用

OpenShift云服务是Red Hat公司推出的一个面向开源开发者的PaaS(Platform-as-a-Service,平台即服务),2011年的“软件自由日”时,Red Hat公司曾在北邮做过OpenShift Express(OpenShift的免费版本)的校园宣讲,使我对这个产品产生了很大兴趣,于是打算在OpenShift平台上搭建一个应用试试。 OpenShift有很大的灵活性,可以支持Java,Ruby,PHP,Python的多种开发框架,因为我目前只会使用Python,所以我选择在OpenShift上搭建一个Django应用。 注册&登入OpenShift 首先,需要到OpenShift网站注册一个帐号https://openshift.redhat.com/ 然后登入OpenShift,选择Express版本 安装rhc client tools 在Linux上,需要git,ruby 1.8以上版本,以及rubygems 然后执行命令: su -c 'gem install rhc' 其他平台上的安装方法详见https://openshift.redhat.com/app/express#quickstart 创建一个域名 直接执行命令: rhc-create-domain -n mydomain -l rhlogin 其中mydomain是你想要创建的域名,以后你所创建的每一个应用将会有这样的URL http://appname-mydomain.rhcloud.com,rhlogin则是你的OpenShift登入邮箱 创建一个应用 …

#Django#OPENSHIFT#Red Hat#开源#云计算

过年时的蛋疼之作:北邮本科生成绩查询系统

一直对学校那个URP教务系统很不爽,不光在手机上访问很不方便,及时用电脑访问也还要求IE only才能显示正常,查个成绩还得点N次才能找到结果。但是偏偏期末考试结束之后还总得上教务系统查成绩,实在是很无奈。 所以如果让我来做一个成绩查询系统,我的需求其实很简单,要求这个系统: 能够在手机上使用 操作过程足够简洁明了 考虑到教务处不可能提供API供我使用,只能通过抓取教务系统的网页,然后解析HTML获取查询结果的方法来实现。 于是我的除夕之夜就贡献给它了:北邮本科生成绩查询系统 登录界面,使用学号和教务系统的密码登录 查询结果,略去了教务系统里的课程号等信息 基于Django技术构建,搭建在RedHat OPENSHIFT平台上。 链接:http://byjw-chon.rhcloud.com/

#Django#北邮#OPENSHIFT

2011

Apache+Django+FastCGI

最近在课上做动态网页的作业,虽然要求用JSP完成,但是我实在是不想碰Java,于是跟老师商量了一下决定用Django来做。 程序还没写完,却已经开始琢磨着怎么部署Django,Django Book上建议使用Apache+mod_python的方式实现,但是我在编译mod_python时却总是会出错,Google了一通也没找出原因,索性弃之不用而改用FastCGI。 一点准备工作 安装Apache,虽然更偏爱Nginx,但是这次想尝试一下使用Apache作为Web Server 安装mod_fastcgi,mod_fastcgi是Apache的FastCGI模块 安装flup,flup是一个用来处理FastCGI的Python库 配置Apache 为了让Apache能够使用FastCGI模块,需要编辑httpd.conf,添加一行 LoadModule fastcgi_module modules/mod_fastcgi.so 其次,为了使得目录中的.htaccess文件有效,需要将中的参数 AllowOverride None 改为 AllowOverride All 最后,需要修改参数 Options FollowSymLinks 在此之后添加+ExecCGI,成为 Options FollowSymLinks +ExecCGI 这是为了允许执行目录中的CGI脚本,之前尝试过很多次都无法执行CGI脚本,直到看到这篇文章才明白其中的原因。 部署Django Project 假设/srv/http为网站的根目录,而Django …

#Django#Apache#FastCGI