自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 优麒麟搜狗输入法简繁切换

在 ubuntu 上没有找到顺手的输入法,支持的 linux 的输入法或多或少都会有点小毛病,偶然看到优麒麟优化过的输入法想尝试使用一下但是刚使用就发现一个问题,简繁切换快捷键和 PyCharm 的全局搜索快捷键存在冲突,导致在 PyCharm 中无法全局搜索,网上搜索出来的解决方案基本分为两种.改变 PyCharm 全局搜索快捷键关闭搜狗输入法的简繁切换果断选择第二种但是…网上的解决方案都是针对官方的搜狗输入法的,例如下面几个链接https://juejin.cn/..

2022-04-28 20:46:06 1153

原创 批量爬取 pexels 图片

闲来无事尝试写了个爬虫爬取 pexels 上的图片内容,遇到了一些问题来记录下主要问题网站反爬, 借助 selenium 绕过网站对 selenium 也做了反爬处理,识别为 webdriver 时,js 文件获取 403,想办法隐藏 webdriver 身份绕够反爬selenium 无法在页面上采集到想要的链接(准确应该说是可以采集到小图的链接,但是小图的分辨率不够),研究下图片规律,发现每个图片有自己的 id 获取图片 id 自己拼接 url 下载拼接 url 不知道如何提升分辨率,好在.

2021-08-03 21:18:50 1247 2

原创 Django order by 高级用法

Django order by 高级用法最近业务上出现了一个比较特殊的排序需求:推荐池的内容要排在最前面,其他的 id 升序准备定义modelclass TestCaseWhen(models.Model): name = models.CharField(max_length=255)生成数据from test_case_when.models import TestCaseWhendata_list = []for num in range(10000):

2021-06-21 15:11:41 2581

原创 git常见问题汇总

git常见问题汇总最近git status时又出现中文问题, 想来这已经是第3次了,为了方便今后解决, 在此将错误汇总, 便于记忆和查阅Linux下git命令中文显示乱码在bash中输入git config --global core.quotepath falsecore.quotepath 设置为false的话,就不会对0x80以上的字符进行quote.中文显示正常...

2020-06-04 22:57:52 195

原创 linux新建用户后可能存在的问题

linux新建用户后可能存在的问题执行useradd命令后未在/home目录下生成新用户的文件夹单纯的使用useradd new_user创建新的用户后是不会默认生成用户文件夹的执行useradd -m new_user新建用户后,新用户没有shell命令的自动补全使用root用户查看文件/etc/passwd在该文件中找到新建的用户会发现新建的用户默认启动shell为/bin/sh将其改为/bin/bash新建用户后,新用户无法使用sudo命令使用root用户赋予文件/etc

2020-06-03 23:44:12 378

原创 Bash的启动脚本

Bash的几种模式登陆式即某个用户由/bin/login登陆进系统后启动的shell非登陆式不想要登陆而是由某些程序启动的shell.比如切换用户时; 或者执行/bin/bash时.如何区分输入echo $0, 如果输出的字符中前缀为"-", 表示登陆模式登陆模式下Bash启动脚本的顺序/etc/profile/etc/profile调用/etc/profile.d下的所有脚本然后执行~/.bash_profile, ~/.bash_login, ~/.profile中的一

2020-05-27 21:17:32 495

原创 关闭mysql远程连接

之前为了可以连接远程数据库而开放了mysql的远程连接权限给所有的IP地址结果居然有人进去了,还删了我的数据, 还勒索我。6666666666666,你可真是个小机灵鬼。实在没办法只能关闭远程连接了。步骤使用root用户登录到数据库use mysql 选择mysql数据库revoke all privileges on *.* from 'root'@'%'; 撤回权限del...

2019-11-29 14:40:03 1119

原创 爬取最好大学网排名数据

今天闲来无事,写了个小爬虫,爬取了最好大学网的排名数据。最好大学网主要是使用requests库进行爬取,使用xpath和正则表达式提取数据,然后将数据保存到文件中。源码from lxml import etreeimport requestsimport reimport csvclass RankSpider(): def __init__(self, url):...

2019-11-29 14:06:07 561

原创 Python使用reportlab生成带有图片的pdf

reportlab是一个很好用的Python第三方库,可惜文档是纯英文的。下面是一个导出图片的简单示例# -*- coding: utf-8 -*-from reportlab.platypus import Imagefrom reportlab.pdfgen import canvasdef to_pdf(response, url_list=None): can ...

2019-11-11 16:23:54 3078

原创 利用Python取出excel数据并生成统计图

取出excel数据生成图表帮朋友写的一个小脚本从excel中取出数据,然后生成一个统计图表借助了Python的第三方模块xlrd和pyechartsxlrdPython中用来读取excel数据的模块安装pip install xlrdxlrd文档pyechartsEcharts 是一个由百度开源的数据可视化,凭借着良好的交互性,精巧的图表设计,得到了众多开发者的认可。...

2019-09-14 22:13:44 12775 4

原创 Python中的函数传参问题

Python中的函数传参问题Python 唯一支持的参数传递模式是共享传参。共享传参指函数的各个形式参数获得实参中各个引用的副本。也就是说,函数内部的形参是实参的别名。这种方案的结果是,函数可能会修改作为参数传入的可变对象,但是无法修改那些对象的标识(即不能把一个对象替换成另一个对象)。函数可能会修改传入的可变对象a = [1, 2, 3, 4] ...

2019-09-12 11:34:23 234

原创 Python 单分配泛函数

单分配泛函数通俗一点的说法就是,根据函数传入的第一个参数的数据类型的不同,而执行不同的方法。单分派:根据一个参数的类型,以不同方式执行相同的操作的行为。多分派:可根据多个参数的类型选择专门的函数的行为。泛函数:多个函数绑在一起组合成一个泛函数。Python中可以借助functools模块的singledispatch函数实现该功能简单示例In [84]: fr...

2019-09-12 10:13:32 530

原创 Python文件编码报错

Python文件编码报错UnicodeDecodeError: 'ascii' codec can't decode byte 0xe5 in position 11: ordinal not in range(128)问题原因我使用是deepindeepin 的默认编码是 ‘ascii’In [1]: import sysIn [2]: sys.getdefaultenco...

2019-09-02 08:57:07 128

原创 Python 中的类对象和实例对象

概念类对象: 就是类本身实例对象: 由类实例化出来的对象In [1]: class Person(object): ...: def __init__(self): ...: pass ...:In [2]: print(Person)<class '__main__.Person'>In [3]: p1 = Person(...

2019-08-26 12:49:55 2609 2

原创 前端向后端传递json数据

最近在使用ajax向后端传递数据时,遇到了一些问题,自己简单研究了一下,做个总结。

2019-08-02 08:52:40 17214 1

原创 ORM下的N+1问题

ORM下的N+1问题ORM下数据库的N+1问题还是比较常见的,简单介绍一下。这是下面讲解要使用到的模型类 # article/models.py class Article(models.Model): """博客文章模型类""" title = models.CharField(max_length=100, verbose_name="博客标题", unique=...

2019-07-21 21:49:24 443

原创 Django数据库查询优化(二)

数据库查询优化(二)接上回写过的文章下面将会使用到的模型类class Article(models.Model): """博客文章模型类""" title = models.CharField(max_length=100, verbose_name="博客标题", unique=True) category = models.CharField(max_le...

2019-07-18 16:59:00 240

原创 Django模型类关系

Django中模型类关系字段主要有三种ForeighKeyManyToManyFieldOneToOneFieldForeignKey前向查询如果模型具有一个 ForeignKey ,那么该模型的实例将可以通过属性访问关联的(外部)对象。前向查询一对多关联关系时在第一次访问关联对象就被缓存。以后对同一个对象的外键的访问都使用缓存。QuerySet 的 select_re...

2019-07-10 14:34:41 178

原创 Django数据库查询优化(一)

数据库查询优化(一)收藏的一篇文章下面内容会使用到的模型类,最近在看TheDjangoBook,这个模型类是里面的,稍微做了些改动# models.pyfrom django.db import models# Create your models here.class Publisher(models.Model): name = models.CharField(...

2019-07-10 11:53:56 618

原创 Python实现TFTP上传和下载

Python实现TFTP上传和下载1. TFTP协议介绍TFTP(Trivial File Transfer Protocol,简单⽂件传输协议)是TCP/IP协议族中的⼀个⽤来在客户端与服务器之间进⾏简单⽂件传输的协议特点:简单占⽤资源⼩适合传递⼩⽂件适合在局域⽹进⾏传递端⼝号为69基于UDP实现2. TFTP客户端服务器交互过程TFTP服务器默认监听69号端⼝...

2019-06-11 20:26:33 2047

原创 设计模式之单例模式(Python实现)

单例模式通常情况下,我们定义一个类,这个类可以实例化很多个不同的对象,这些对象互不相同class Person: def __init__(self, name): self.name = namep1 = Person('zyp')p2 = Person("zyp")print(p1.name, p2.name)print(p1)print(p2)...

2019-06-05 11:42:29 106

原创 Python上下文管理器

with 和 上下文管理器上下文管理器上下文管理器是指在一段代码执行之前执行一段代码,用于一些预处理工作;执行之后再执行一段代码,用于一些清理工作。比如打开文件进行读写,读写完之后需要将文件关闭。又比如在数据库操作中,操作之前需要连接数据库,操作之后需要关闭数据库。在上下文管理协议中,有两个方法__enter__和__exit__,分别实现上述两个功能。任何实现了 __enter__(...

2019-06-03 20:07:14 152

原创 Python元类

元类类也是对象在 Python 中一切皆对象,类也属于对象的一种。通常情况下,"普通类(class)"可以用来生成实例(instance),同样的,"元类 (meta-class)"也可以生成实例,生成的实例就是"普通类"了对象的类型叫作类(class),类的类型就称作元类 meta-class动态的创建类因为类也是对象,你可以在运⾏时动态的创建它们,就像其他任...

2019-06-03 14:43:52 113

原创 Python装饰器的理解与运用

装饰器装饰模式有很多经典的使用场景,例如插入日志、性能测试、事务处理等等,有了装饰器,就可以提取大量函数中与本身功能无关的类似代码,从而达到代码重用的目的。装饰器本身是一个Python函数,他可以让其他函数在不需要做任何代码变动的前提下增加额外功能,装饰器的返回值也是一个额外的(函数)对象。为什么要使用装饰器一般在开发过程中,要遵循开放封闭原则,虽然在这个原则是用的面向对象开...

2019-06-02 22:39:48 123

原创 Django项目的简单部署

Django项目的简单部署最近部署了自己的项目,现在来做一个简单总结我自己使用的是 Centos7 + Nginx + uwsgi的方式进行部署,所以只简单介绍这种方式前期安装Nginx(请自行google安装)uwsgi(pip install uwsgi)项目所需Python环境和模块uwsgi配置和Nginx配置先修改 settings.py 文件 DEBUG=...

2019-05-27 13:29:15 419

原创 Django中如何使用markdown

Django中如何使用markdown最近在使用Django搭建个人博客,为了内容的美观,所以想使用markdown语法来显示页面google了一下Django的markdown插件,发现还挺有几个的。Markdown(pip install markdown)Django-Markdownx(pip install django-markdownx)Django-Markdown-...

2019-05-23 21:11:09 1376

原创 Django控制MySQL数据库事务

Django控制MySQL数据库事务当我们用模型类保存数据时,有些数据需要一起保存时,如果出现异常,可能导致一部分数据保存到了数据库中,但是另一部分数据未能成功保存。为了让一组语句要么都执行,要么全都不执行。需要使用MySQL事务。MySQL事务1. 事务概念一组mysql语句,要么执行,要么全不不执行。2. 事务的特点原子性:一组事务,要么成功;要么撤回。稳定性 :有非...

2019-05-18 15:29:44 332

原创 Django全文检索

Django全文检索最近在写一个Django电商项目,需要用到全文检索,通过简单的学习,对Django使用第三方全文检索工具做了一个简单总结。全文检索框架作用:帮助用户使用搜索引擎。用户全文检索框架haystack搜索引擎whoosh基本流程1. 安装需要的包pip install django-haystackpip install whoosh注意,安装djang...

2019-05-15 15:12:24 322

原创 Django使用远程MySQL数据库的一些小坑

Django使用远程MySQL数据库的一些小坑在使用Django连接远程数据库时,仅仅是更改settings文件中的设置选项是不够的,还要对远程主机端的MySQL数据库进行一些修改。大致流程在远程主机端启动mysql数据库并登录。执行Grant all privileges on *.* to 'root'@'%' identified by 'root' with grant opt...

2019-05-09 20:37:59 277

原创 scrapy_redis分布式爬虫爬取亚马逊图书

scrapy_redis分布式爬虫爬取亚马逊图书最近在学习分布式爬虫,选取当当图书进行了一次小练习网址,https://www.amazon.cn/gp/book/all_category/ref=sv_b_0前期准备安装 redis 数据库,网上由教程请自行谷歌安装 Scrapy 和 scrapy-redispip install scrapy(如果出现问题请自行谷歌解决,需要v...

2019-04-24 10:40:43 528

原创 基于PyMySQL的数据库连接

基于PyMySQL的数据库连接PyMySQL 是在 Python3.x 版本中用于连接 MySQL 服务器的一个库,Python2中则使用mysqldb。PyMySQL 遵循 Python 数据库 API v2.0 规范,并包含了 pure-Python MySQL 客户端库。PyMySQL是一个很好用的模块,但是还是要进行简单的学习才能掌握,为了方便使用,对pymysql进行了...

2019-04-23 13:56:13 159

原创 Scrapy_redis分布式爬虫爬取当当图书

Scrapy_redis分布式爬虫爬取当当图书最近在学习分布式爬虫,选取当当图书进行了一次小练习前期准备安装 redis 数据库,网上由教程请自行谷歌安装 Scrapy 和 scrapy-redispip install scrapy(如果出现问题请自行谷歌解决,需要vc环境)pip install scrapy-redis流程分析主要抓取内容为每个"大分类下的下分...

2019-04-23 13:30:41 227

原创 Scrapy爬取京东图书信息

Scrapy爬取京东图书信息最近在学习scrapy,闲来无事,找了个比较容易的网站进行了联系网址,京东图书主要抓取内容为 “黑色粗体大分类下的小分类对应的每个小分类的详情页列表中的图书信息内容”主要代码spider# -*- coding: utf-8 -*-import scrapyfrom copy import deepcopyimport jsonclass...

2019-04-22 23:10:10 1267 2

原创 关于爬虫爬取百度贴吧数据使用xpath无法取得数据的几种解决方法

关于爬虫爬取百度贴吧数据使用xpath无法取得数据的几种解决方法最近在学习爬虫,没事时,尝试爬取百度贴吧,发现使用xpath提取数据时,在浏览器中使用xpath调试时,可以很成功的拿到数据,但是代码中无法取到。将整个页面下载到本地后发现一个很神奇的事情。百度贴吧里需要提取的标签居然被注释了。。。。。。。。。。百度还是会玩啊,这算是反爬虫的一种莫。。。。。。。解决方法user-ag...

2019-04-20 12:54:43 1116

原创 关于修改WIFI代理后手机部分APP无法使用的解决办法

关于修改WIFI代理后手机部分APP无法使用的解决办法最近在练习爬虫抓取手机app数据时出现了一个问题,就是修改wifi代理,使用fiddler代理时,使用斗鱼app显示无法连接到服务器,在网上搜索了一下结果,个人觉得可能是网络证书的问题,下面是我自己的解决方法解决方法在手机浏览器中输入地址:http://localhost:8888/, 点击FiddlerRoot certifica...

2019-03-29 16:03:43 10469 5

原创 使用爬虫获取ajax数据

使用爬虫获取豆瓣电影排名信息分析因为豆瓣电影排行榜内容使用ajax加载的,如果只是简单访问 url “https://movie.douban.com/typerank?type_name=剧情&type=11&interval_id=100:90&action=” 得到的只是这个页面的一个框架html,并没有需要的实质性的内容经过抓包分析,发现内容数据在 url ...

2019-03-27 13:52:55 560

原创 使用selenium获取ajax加载的页面信息

使用selenium获取ajax加载的页面信息实验网站:豆瓣电影剧情片主要使用模块:selenium (pip install selenium)lxml (pip install lxml)主要思路:因为直接使用selenium访问豆瓣页面是不行的,需要让selenium执行一段js脚本滑动滚动条,才能使豆瓣页面刷新,获取到需要的内容。代码如下"""使用s...

2019-03-27 13:42:52 5996

原创 使用selenium+BeautifulSoup统计斗鱼lol板块信息

使用selenium+BeautifulSoup统计斗鱼lol板块信息闲来无事,使用selenium对斗鱼的页面进行了一下请求练习,并且对页面的数据进行了简单统计不得不说得出了惊人的数据,斗鱼仅仅是英雄联盟板块的热度就有7000多万…注意:测试数据和时间结点有关"""本来想爬取前10页内容,结果发现第一页都挺多的,就只爬取了第一页"""from selenium import w...

2019-03-26 22:14:14 131

原创 python3爬虫爬取百度贴吧下载图片

python3爬虫爬取百度贴吧下载图片学习爬虫时没事做的小练习。百度对爬虫还是很友好的,在爬取内容方面还是较为容易。可以方便各位读者去百度贴吧一键下载每个楼主的图片,至于是什么类型的图片,就看你输入什么关键字了。使用python模块使用urllib进行爬取(python3自带不用额外安装)使用xpath进行数据提取(pip install lxml)from urllib i...

2019-03-25 21:05:55 431

原创 使用urllib.request+xpath爬取糗事百科文字内容

使用urllib.request+xpath爬取糗事百科文字内容最近在学习爬虫,闲来无事进行了一个小练习,对糗事百科中的文字板块内容进行了爬取,并进行了整理,然后存入到了json文件中。废话不多说,直接上代码。from urllib import requestimport jsonfrom lxml import etreeclass QiuShiSpider: ""...

2019-03-25 20:47:51 1013

空空如也

空空如也

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

TA关注的人

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