很零碎的知识点,有的是踩过的坑,不成系统,但是绝对很有用,知道的可以回顾下,不太了解的可以多学习下
1、Python连接MySQL加编码
记得加charset,没加的话部署Linux服务器运行可能有中文乱码,已踩坑
2、最好用utf8mb4
很多时候我会用sqlalchemy创建连接数据库引擎,charset用的utf8mb4,原因在于爬取的文本中有表情,utf8不行,同时,数据库、表,编码也都要保持一致
3、好用的网页解析库PyQuery
觉得好用的原因:
1、语法类似JQuery,好记
2、可以增删改查html元素,然后下载网页,这点xpath就比较弱了,下面是我最近用到的一些方法,其他方法可以网上查查
4、Linux配置python3环境、pip软链接
下方分别为解压安装,配软连接,注意配python3和pip的时候,与/usr/bin下面的原本的python2和pip命名区分,一般情况下别去动python2的软链接,会导致centos包管理工具yum命令出问题
5、网站地图、robots协议
robots.txt可以告诉搜索引擎网站哪些数据能爬,如果你想利于网站排名,尽量少disallow,sitemap.xml网站地图则是直接提交让搜索引擎增加收录,这两个文件/路径一般配在网站根目录下,可以直接写到nginx加两个路径指向就行了,主要用来优化网站,利于各加搜索引擎抓取网站信息,增加收录和网站排名
6、Django orm查询values
比如下方,我在查询时候只需要文章的id和title数据,则直接values查这两个字段就行,这样可以提高查询效率
Q对象进行逻辑查询,也很常用
7、直接将一个字典保存mysql(键和列名一致)
get_local_engine是我定义的一个获取engine的方法
8、django admin站点引入富文本编辑器Kindeditor
1、kindeditor安装包直接放在项目static下面
2、在admin.py中加入这段js
3、kindeditor中config.js改成原本admin文本域的id,如下方截图圈到的
编辑器效果图
领取专属 10元无门槛券
私享最新 技术干货