自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 博客已搬至开源中国

本博客网站已搬家至开源中国:https://my.oschina.net/zhenfei

2018-08-16 17:20:47 556 1

原创 我的网站搭建 (第23天) 代码块复制功能

开发十年,就只剩下这套架构体系了! >>> ...

2019-02-05 09:45:00 113 0

原创 页面预加载loading动画

开发十年,就只剩下这套架构体系了! >>> ...

2019-02-05 09:44:00 763 0

原创 我的网站搭建 (第22天) 改写评论框样式

一、前言 在上一篇内容网站搭建 (第21天) 评论功能设计,已经将评论的模型使用,ajax的加载以及ckeditor评论样式大致都介绍了一遍。其实不管是ckeditor还是ueditor都非常的好用,在学会了如何配置ckeditor编辑框和评论框以后,我开始转向了ueditor的学...

2019-01-04 16:59:00 42 0

原创 我的网站搭建 (第21天) 评论功能设计

一、前言 为什么一直拖着评论功能到现在才开始准备写,确实因为最近较忙,而且评论功能确实也不好写。之前,我上网查了很久,大概的方法总结起来有下面三个。 方法一:第三方社会化评论插件,如友言,多说,畅言,disqus。 方法二:Django评论库 方法三:自己...

2019-01-04 11:00:00 35 0

原创 我的网站搭建 (第二十天) 搜索功能提示

其实每一个input输入框都会自动保存用户的搜索记录,然后表现出来。而我的想法是可以在输入的同时自动查询数据库,然后将结果显示在页面中,所以明显查询数据库的搜索提醒对于用户来说要高效的多。将两者的效果对比一下: 1.关闭输入框的记录显示 因为每一个input输入框都会默认...

2018-11-10 16:23:00 21 0

原创 多线程糗事百科案例

爬取糗事百科段子,假设页面的URL是:http://www.qiushibaike.com/8hr/page/1 要求 1.使用requests获取页面信息,用XPath / re 做数据提取 2.获取每个帖子里的用户头像链接、用户姓名、段子内容、点赞次数和评论次数 3.保存到 jso...

2018-10-16 20:05:00 14 0

原创 使用代理抓取反爬微信文章

声明:此篇文章主要是观看静觅教学视频后做的笔记,原教程地址:https://cuiqingcai.com/ 在抓取网页时,某些网站会有封ip的现象,所以选择利用代理伪装我们的ip进行爬虫请求,但进行爬虫时可能需要很多ip,这时就要求维护一个代理池(池也就是代理队列),可放进代理,也可...

2018-10-11 16:08:00 23 0

原创 我的网站搭建 (第十九天) 标签功能

在逛开源中国社区的时候,发现每一篇博客下面都有一行文章的标签,大概就是文章中的代码类型以及使用到的模块之类的。如下图,我的开源中国社区地址是:https://my.oschina.net/zhenfei。 转而想到自己的网站,我也想添加一个这样的功能。那么在Django中...

2018-10-10 21:43:00 10 0

原创 Flask+Redis维护代理池

声明:此篇文章主要是观看静觅教学视频后做的笔记,原教程地址https://cuiqingcai.com/ 普通代理 因为之前都是学习测试,不需要对网站频繁的搜索爬取,所以代理使用似乎关系不大,不过为了防止IP被封,也是一个很重要的知识点。之前使用代理也都是查找一些代理网站,手动...

2018-10-10 14:17:00 33 0

原创 我的网站搭建 (第十八天) 自定义用户模型

在Django自带的User类中,只有用户名、邮箱、密码等等一些基础信息。如果此时有添加用户电话,昵称,qq号等其他信息的需求时,自带User类的弊端就出现了。那么如果出现上述需求时,就需要自定义用户模型。 在Django的文档中对于自定义用户模型,有下面这么两段话。 ...

2018-10-09 21:40:00 21 0

原创 Selenium模拟浏览器抓取淘宝美食信息

声明:此篇文章主要是观看静觅教学视频后做的笔记,原教程地址:https://cuiqingcai.com/ 淘宝页面比较复杂,含有各种请求参数和加密参数,如果直接请求或者分析Ajax将会非常繁琐。Selenium是一个自动化测试工具,可以驱动浏览器去完成各种工作,比如模拟点击、输入和...

2018-10-01 21:43:00 23 0

原创 我的网站搭建 (第十七天) celery 定时刷新缓存

当网站使用redis缓存时,就会涉及到缓存的过期时间,redis数据库中的内容就会消失。这个时候进行用户操作又会变慢,所以要采用一种办法,当缓存刚好要过期时,能够使得redis数据库自动对缓存内容进行更新。这个办法就是使用 celery,具体配置及使用我已经先在Django框架17: ...

2018-10-01 20:45:00 25 0

原创 Django框架17: Celery的使用

Celery介绍 1.什么是Celery Celery是一个python模块,它在官网的定义:Celery is asynchronous task queue/job based on distributed message passing. It is focused on re...

2018-09-26 16:28:00 9 0

原创 我的网站搭建 (第十六天) 使用Redis缓存提速

在服务器配置不算高的情况下,频繁地访问数据库会增加许多开销,当查询的内容较多或较复杂时,会占用很多的查询时间,容易使得访问卡,慢,出错等情况。由于之前在部署网站的时候,我没有采用那些常用的缓存技术,随着我的发表文章越来越多,我也感受到了卡,慢的现象,用户体验很差。之前我也学习过redi...

2018-09-15 21:27:00 38 0

原创 分析Ajax抓取今日头条街拍美图

声明:此篇文章主要是观看静觅教学视频后做的笔记,原教程地址https://cuiqingcai.com/ 实现流程介绍 1.抓取索引页内容:利用requests请求目标站点,得到索引网页HTML代码,返回结果 2.抓取详情页内容:解析返回结果,得到详情页的链接,并进一步抓取详情页信息 ...

2018-09-13 21:09:00 11 0

原创 Requests库+正则爬取猫眼电影Top100

声明:此篇文章主要是观看静觅教学视频后做的笔记,原教程地址:https://cuiqingcai.com/ 流程框架 1.抓取单页内容:利用requests请求目标站点,得到单个网页HTML代码,返回结果。 2.正则表达式分析:根据HTML代码分析得到电影的名称,主演,上映时间,评分,图...

2018-09-13 19:31:00 9 0

原创 Urllib2库+正则爬取内涵段子

内涵段子前段时间发生的事情,想必大家都有所耳闻,我本人也是非常喜欢看段子的。但这并不能阻止我想看段子的脚步,幸好,给大家推荐一个网站,叫做内涵吧,里面也有非常丰富的段子内容。下面就以内涵吧为例爬取所有段子,可供离线观看。 先分析请求的url地址 1.第一页段子url:https:/...

2018-09-13 19:21:00 14 0

原创 使用Urllib2制作有道翻译器

今天是学习爬虫的第二天了,看了网上很多初学者都喜欢爬取字典翻译。确实,有一个自己随时随地使用的翻译神器,省去了打开浏览器输入网址的那些繁琐,也腾出了不少时间。在这里我选择的是有道翻译,相比于百度翻译来说,它的特点就是使用了post请求来获取json格式数据,而百度翻译使用的是ge...

2018-09-13 19:13:00 11 0

原创 我的网站搭建 (第十五天) 用户注册与登录

这几天正好学了Flask的用户注册登录功能设计,发现与Django的使用特别类似,所以学习Flask的同时也加强了我对Django表单的印象。正好网站搭建也差不多更新到用户操作部分了,就索性把Django表单相关知识再推进一下。其实要加入用户操作功能,也可以直接在模板页面中加上form...

2018-09-09 19:51:00 28 0

原创 网络爬虫08: PySpider爬虫框架

爬虫的基础知识到这里,已经可以暂时告一段落,接下来就是学会使用框架来写爬虫,用框架会使爬虫代码更加简洁。在这之前,我也了解了一下关于Python爬虫都有哪些框架 Python常用爬虫框架 1.scrapy (推荐) 地址:https://scrapy.org/ ...

2018-09-09 18:52:00 27 0

原创 杭州链家房产信息分析

杭州,是我毕业找工作的首选地,了解到租房价格较高,现通过所学知识对杭州租房价格进行分析。进行数据分析,就要实现对房产信息的可视化,必须拿到数据,后通过numpy,pandas,matplotlib等一些科学计算包进行计算。此项目需要用到爬虫知识,Scrapy框架,数据分析基础。 Sc...

2018-09-08 18:36:00 25 0

原创 网络爬虫07: Selenium库详解

Selenium 1.什么是Selenium 自动化测试工具,支持多种浏览器,爬虫中主要用来解决Javascript渲染的问题 2.安装selenium pip3installselenium 3.安装webdriver 查了半天,找到下载地址: ...

2018-09-07 19:30:00 14 0

原创 网络爬虫06: PyQuery库详解

PyQuery 1.什么是PyQuery库 强大又灵活的网页解析库。如果你觉得正则写起来太麻烦,如果你觉得BeautifulSoup语法太难记,如果你熟悉jQuery的语法,那么PyQuery就是你的绝佳选择 2.安装 pip3installpyquery 初始化 ...

2018-09-07 19:21:00 16 0

原创 网络爬虫05: BesutifulSoup库详解

BeautifulSoup 1.什么是BeautifulSoup 灵活又方便的网页解析库,处理高效,支持多种解析器。利用它不用编写正则表达式即可方便地实现网页信息的提取 2.安装BeautifulSoup pip3installlxml pip3installB...

2018-09-05 15:00:00 21 0

原创 网络爬虫04: Requests库详解

Requests库介绍 1.什么是Requests库 Requests使用Python语言编写的,基于urllib,采用Apache2 Licensed开源协议的HTTP库。它比urllib更加方便,可以节约我们大量的工作,完全满足HTTP测试需求。一句话—&am...

2018-09-05 14:49:00 18 0

原创 网络爬虫03: Urllib库详解

Urllib库介绍 1.什么是Urllib ①Python内置的HTTP请求库 ②urllib.request 请求模块 ③urllib.error 异常处理模块 ④urllib.parse url解析模块 ⑤urllib.robotparser ...

2018-09-05 13:39:00 17 0

原创 网络爬虫02: 正则Re模块

正则表达式 1.正则表达式概述 ①正则表达式,又称正规表示式、正规表示法、正规表达式、规则表达式、常规表示法(英语:Regular Expression,在代码中常简写为regex、regexp或RE) ②正则表达式使用单个字符串来描述、匹配一系列匹配某个句法规则的字符串...

2018-09-04 23:05:00 12 0

原创 网络爬虫01: Urllib2库使用代理IP

今天将时间几乎花在了爬虫的Handler处理器和代理设置上,据说现在的反爬虫机制会发现爬虫程序,然后封掉爬虫程序请求的IP地址。这就糟糕了,所以还是要好好学习一下IP的代理设置,学完之后就可以使用代理来访问目标网址,可以避免封掉我IP了。还真是问题不愁找不到解决的人啊,我给大家推荐一些...

2018-09-04 22:44:00 23 0

原创 Flask框架学习小总结

说明:Flask是一个Python编写的Web 微框架,利用它可以使用Python语言快速实现一个网站或Web服务。因为我是从Django框架入手Python Web的,所以在学习Flask的过程中,总是会一边思考同样的功能,Django该如何实现。本文参考自Flask官方文档,大部分代码引用...

2018-09-04 22:22:00 48 0

原创 我的网站搭建 (第十四天) xadmin强化后台

昨天在逛开源中国社区时,偶然在推荐中看到有关xadmin的文章,一想到Django自带的后台不是admin吗,难道它们之间有某种联系?果不其然,还真的是,xadmin就是admin的后台强化版,除强化一些功能外还增加了许多admin中没有的设计。举个例子:如使用Bootstrap作为U...

2018-09-04 22:07:00 18 0

原创 我的网站搭建 (第十三天) 自定义全文搜索

关于全文搜索的部分,主要是利用了haystack,whoosh和jieba这三个包,而且必须安装,否则以下内容无效。详细的说法已经在之前Django框架的学习内容中总结过了:Django 框架15: 全文搜索 这次继续学习全文搜索的内容主要是因为在之前的内容中,缺少了自定义全...

2018-09-04 21:40:00 16 0

原创 我的网站搭建 (第十二天) 自定义错误视图

在访问网站过程中,可能会出现404错误和500错误,分别是找不到请求的资源错误和WEB端服务器程序错误,它们一般是不可避免的。 一旦产生了这种错误,很多都是通过web server 来处理。比如使用 apache 的定义 或者nginx 的定义,都可以实现定向处理。但Django提供了...

2018-09-04 20:58:00 6 0

原创 我的网站搭建 (第十一天) 阅读量曲线图

为了让自己能直观的看出博客阅读量的变化,而不需要到后台观察,所以就使用了Highcharts的基础折线图来帮助实现。其文档地址:Highcharts 演示 样例效果: 通过阅读API文档,可以实现自己想要的样式,也可以改变线条的颜色。一系列的配置主要有chart: {...

2018-09-04 19:14:00 31 0

原创 我的网站搭建 (第十天) Ueditor编辑器

之前说过,我的网站编辑器一开始是tinymce,然后才用的ckeditor。可是最近我发现,ckeditor的小图标不是很美观,看久了有点low的样子。我是不是应该换一个编辑器呢,一想到这里,马上打开谷歌搜索有没有更加美观的富文本编辑器。翻了几页,才发现百度Ueditor编辑器就很不错...

2018-08-28 12:42:00 10 0

原创 我的网站搭建 (第九天) 博客统计排行

在阅读计数功能之后,就可以可根据每篇博客的阅读量来对博客进行热门统计排行了,如阅读周榜,月榜,总榜。基本上只要实现其中一个,其他两个也能照着做出来,大体上的逻辑是一样的。都是通过django自带的工具包中的timezone模块获取今天的日期格式,再通过datetime模块的timede...

2018-08-28 12:36:00 8 0

原创 我的网站搭建 (第八天) 阅读计数优化

上篇写了几个简单的阅读计数功能实现,其缺点都是无法统计某一天的阅读数量,也就无法根据日期来对热门博客进行排行。所以最好还是重建一个带有日期字段名的模型表,这就可以根据日期条件来筛选博客的阅读次数了,比较方便统计。ReadNum继续保留,再建一个ReadDetail模型类 fromd...

2018-08-27 19:33:00 10 0

原创 我的网站搭建 (第七天) 简单阅读计数

如果知道每篇文章的浏览量,管理员就可以了解到访问者对文章的喜好程度,方便后续推出相关内容文章,同时对热门博客的统计和阅读趋势图打好基础。针对阅读统计功能,前前后后我一共想到了三种方法,各种方法都有利有弊。 采用该模型字段计数 1.修改Post模型read_num 2.优化:设置c...

2018-08-27 19:27:00 12 0

原创 我的网站搭建 (第六天) Ckeditor编辑器

富文本编辑器,Rich Text Editor, 简称 RTE, 是一种可内嵌于浏览器,所见即所得的文本编辑器,这是百度百科的对富文本编辑器的解释。我们可以借助富文本编辑器,编辑出来一个包含html的页面,从而页面的显示效果,可以由网站管理员定义,而不用完全依赖于开发的人员。我之前使用...

2018-08-27 19:18:00 9 0

原创 我的网站搭建: (第五天) 分类和归档

文章分类和日期归档能帮助我们快速定位到想要查找内容,所以今天就是要实现分类以及归档,先从分类开始。 在blog/views.py中定义一个博客分类的视图函数: defcategory_list(request): """ 作用:博客分类的视图处...

2018-08-24 13:36:00 15 0

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