自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

网络爬虫开发

挖掘冷数据高贵价值,发现技术的高冷气质

  • 博客(76)
  • 资源 (1)
  • 收藏
  • 关注

原创 django开发知识点3-链式调用

1、支持链式调用的接口all使用频率比较高,相当于SELECT * FROM table 语句,用于查询所有数据。filter使用频率比较高,根据条件过滤数据,常用的条件基本上字段等于、不等于、大于、小于。当然,还有其他的,比如能修改成产生LIKE查询的:Model.objects.filter(content__contains="条件")。exclude与filter是相反的逻辑reverse将QuerySet中的结果倒叙排列distinct用来进行去重查询,产生SE

2021-04-07 11:52:04 199

原创 django开发知识点2-ORM对象

一、对ORM的理解1、什么是ORM?ORM是对象关系映射(Object Relational Mapping),简称ORM,或O/RM,或O/R mapping,是一种程序技术。白话理解:就是把我们定义的对象(类)映射到对应的数据库的表上,所以ORM就是代码(软件)层面对于数据库表和关系的一种抽象。2、Django与ORM之间的关系Django中的model就是ORM的一个具体实现。3、ORM在Django中的具体体现简单来说,就是继承了Django的Model,然后定义了对应的字段,

2021-04-07 11:47:59 250

原创 Django开发知识点1-创建项目

Django常用 命令:1、安装:pip install django 指定版本 pip3 install django==2.0新建项目: django-admin.py startproject mysite新建APP : python manage.py startapp blog启动:python manage.py runserver 80802、同步或者更改生成 数据库:python manage.py makemigrationspython manage.py

2021-04-07 11:34:19 96 2

原创 消息队列在爬虫开发上的应用

1.什么是消息队列消息队列一般可以作为数据缓存,在实际应用上用来存储经常需要交互的数据,以此提高访问数据的速度及提高网站的用户体验。2.有哪些数据库是消息队列redis、MQ、celery、mongodb等3.为什么使用消息队列在爬虫中使用消息队列可以开发分布式爬虫,也是分部式爬虫中很重要的技术。目前的分布式爬虫架构主要以redis为主,原因在于缓存的速度快,数据可持久化。常规的爬虫使用的是内存缓存的方式,只有在爬虫运行时,数据暂存在内存中,这样的爬虫速度也是很快的,但是由于数据不可

2021-04-06 23:03:20 452

原创 VPS性能优劣与使用

场景;爬虫开发,需要大量ip,可以购买vps服务器。vps服务器优点:是通过拨号上网,切换网卡,更换获取新的IP,对于大批量的爬虫来说,一旦网站被封,需要更换ip,考虑成本的问题,这时候的vps就是最佳的选择,价格几十块钱一个月,还是很便宜的。稳定性也是不错的。vps服务的缺点:由于是拨号上网,所以需要先断开网络之后,在连接网络。在断网再联这个期间ip是不可用的,失效的。其次频繁的拨号上网会使得网卡卡死,更换ip失败,这个时候就需要重启vps.,但也还有更优的方法,就是定时拨号更换,防止网卡卡死。

2020-11-12 15:59:29 254

原创 docker 小白入门

第一步打开服务器第二部重开cmd检查docker的版本,这样可以用来确认docker服务在运行并可通过客户端链接。$ docker version学会使用命令行的工具来检索名字叫做tutorial的镜像。命令行的格式为:docker search 镜像名字$ docker search tutorial通过docker命令下载tutorial镜像。在docker的镜像索引网...

2019-12-19 11:12:35 250

原创 docker快速部署爬虫

Docker部署Python爬虫场景描述:我们使用一个简单的python爬虫部署,本项目是获取百度首页代码。如何实现Docker安装部署。第一步: Win10下创建目录文本选择在D盘下创建docker目录,分别新建三个文件:Dockerfile,app.py,requirements.txtDockerfile(没有后缀):一个文本文件,包含了一条条的指令(Instruction),每...

2019-12-19 11:09:53 2228 1

原创 pyinstaller打包程序这么简单

需要准备素材:python文件 图标(格式为.ico)安装pyinstaller: pip install pyinstaller有两种进入查找文件的方法:1)直接cmd或者快捷键(win+r)然后进入所在文件的文件夹2)直接打开文件所在的文件夹 然后shift+鼠标右键 点击windows powershell1、然后将图片和文件放到一起 在终端输入 pyinsta...

2019-11-02 12:54:19 361

原创 Django 开发后台管理系统

数据库:python自带数据库开发系统:windows ,pycharm主要实现功能:1)登录与注册页面2)添加页面3)更新页面4)查询页面5)删除页面6)账号页面1)登录与注册页面对表单数据进行验证( 从数据库验证)账号密码都存在就登录进入后台;否则就提示账号密码错误点击注册按钮进入注册页面:账号密码是必填项,没有按要求填写就提示输入,按l...

2019-11-01 16:50:43 2166 39

原创 Python爬虫:爬取app短视频

"""夜神模拟器+fiddler+Python爬取app抖音小视频下载fiddler配置网络与端口下载夜神配置网络下载认证下载app最后抓包"""class DouYinApp(): #页面请求 def get_page(self,url): response = requests.get(url) r...

2019-10-15 14:26:42 7432 5

原创 Scrapy :全站爬取文学文章

爬取网站:www.rensheng5.com爬取内容:整站文章爬取字段:名称 时间 作者 内容保存:以每个文章的名称命名保存为txt本次采用通用爬虫爬网站:环境:Ubuntu python3.7在终端创建项目模板 CrawlSpider重要的就是Rule正则表达式的构造项目创建可见我的其他scrapy爬虫,在此不再赘述直接上主要代码: rules =...

2019-10-08 13:06:46 232

原创 职场如何高效沟通

让数据部门的同事找后端开发沟通接口处理的逻辑,结果不出所料就是,接口的逻辑与数据和运营沟通的需求不一致,甚至出现不能很好的满足业务数据部门对多数据源数据同步的开发。结果就是现在只能在数据这边做处理了(上游给挖的坑现在全都砸到了数据部门),数据小伙伴表示很气愤,为什么不能提前沟通好数据的接口处理的逻辑,具体的字段需求,一个小会几分钟就可以避免这样的问题出现,但是由于后端同事的盲目自大,或者不喜欢沟通,运营的妥协,导致了问题的产生,然后项目就在高效逐渐变成了低效,沟通的情绪不断的爆发。

2024-06-22 14:49:53 757 1

原创 DrissionPage框架应用

但是以上都有被检测的风险,新晋浏览器防检测工具,不仅不需要繁琐的安装浏览器的内核,也不需要为浏览器升级后带来的版本不支持烦劳了。它可以自动调用我们本地的浏览器执行网络请求;在我们遇到一些不好处理的反爬虫的情况下,就可以使用这个工具帮助我们模拟人类的操作,达到获取数据的结果;但是我们在本地运行没有问题,线上就没办法运行,这是因为我们的dp会自动调用我们本地已有的浏览器执行网络请求,但是部署到线上服务器后,新的服务器没有安装浏览器,这个时候我就需要使用远程浏览器调用作为第三方的转发请求了。

2024-06-20 15:12:52 500 2

原创 跨部分协作,如何提高工作效率

杜绝出了问题找不对人,找人相互推诿的情况,每个项目都需要制定明确的项目需求及项目任务开发时间周期(按照项目的大小合理的增减项目的流程),由项目管理者向总经理负责这个项目(如果说这个任务有明确的小组负责,那么就由主管负责,主管没有时间的可以由组员负责),由项目经理梳理好项目的需求、参与人、完成周期等,通过会议(也可以是起的形式例如建群)的形式传达给每个参与人,并告知每个参与人的大致参与时间及项目进度和项目的完成周期。在这样的分工下,领导,其他组主管、相关下游参与人都是领导(还有自己的直属主管)的时候。

2024-06-16 15:10:53 763

原创 Maxkb玩转大语言模型

随着国外大语言模型llama3的发布,搭建本地个人免费“人工智能”变得越来越简单,今天博主分享使用Max搭建本地的个人聊天式对话及个人本地知识域的搭建。想要数据持久化就需要将docker的文件挂在到本地的电脑上。默认的用户名:admin密码:MaxKB@123..填写的API域名只能是服务器: ip:11434。选择自己的模型并安装,我这边使用ollama安装。完成之后,也可以将对话的窗口植入到我们自己的网站。2.按装的ollama模型没有开启远程链接。再次安装大模型就成功了。2.创建自己的本地应用。

2024-06-07 10:26:13 470

原创 CrawlSpace爬虫部署框架介绍

全新的爬虫部署框架,为了适应工作的爬虫部署的使用,需要自己开发一个在线编写爬虫及部署爬虫的框架,框架采用的是Django2.2+bootstap依赖scrapyd开发的全新通用爬虫在线编辑部署及scrapy项目的部署框架。项目实现的五大块的功能及许多在维护爬虫的过程中用的许多实用的操作功能。以上就是crawlspace的现有功能,相比其他的部署,这个部署框架更加的便于维护爬虫项目,操作更加灵活方便,交互更加便捷舒适,功能更加完善,信息的显示更加清晰,同时支持手机端在线操作!

2024-06-06 17:59:40 826

原创 python如何发布自己开发的库

日常工作中我们自己会编写许多的python 函数用来处理特定的事情,在我的工作中就有这样的一个函数,专门用来检测化合物的唯一标识符CAS NO是否符合国际的标准。在工作中使用的很频繁,而且又是通用型的检测方法,因此我想把这个库封装一下并发布到pypi上面,方便我部署的时候可以直接下载,也减少了我的项目代码的量及复杂度。8.发布dist文件下的.whl到pypi服务器(按提示输入用户名、密码)(这里需要特别注意:以前时可以直接使用账号和密码发布的但是现在增加了安全验证需要api token)

2024-06-06 11:10:47 332

原创 如何利用pandas解析html的表格数据

我们在编写爬虫的过程中,经常使用的就是parsel、bs4、pyquery等解析库。在博主的工作中经常的需要解析表格形式的html页面,常规的写法是,解析table表格th作为表头,解析td标签作为表格的行数据。那么有一种更为方便的方法就是使用pandas 只需要一行代码就可以完成常见表格的编写。attrs={}用来定位解析的table数据这边是id="con_one_1"的table;运行结果如下:表格数据直接就被解析成一个二元列表,每一个列表就是一个tr标签 每个列表值就是一个td.

2024-06-06 10:25:04 270

原创 NodeJs破解AES参数加密

爬虫分析常见的反爬虫的方式很多,但是比较有难度,有区分度的技术当属JS逆向分析的参数加密,或者数据加密。本篇博客记录的是博主本人在工作中实际碰到的请求参数进行了加密情况,使用的加密方式是AES的方式(不知道AES是啥也不重要,毕竟我们是做爬虫的只要将最后的结果逆向还原出来,至于深入研究如何实现应该是做密码学的该考虑的,我们可以做一些简单的学习,知道是个啥)。这里的加密是对GET请求进行的加密。详细记录本次的破解过程,毕竟时间久了就会忘的,以后也可以温故而知新。逆向网站为化合物百科1.打开网站进行必要

2021-10-15 15:26:02 659

原创 uwsgi+Nginx部署Django

服务器:阿里云系统:ubuntu20python:服务器自带服务器在安全组中开启8001/8001端口前期MySQL安装使用docker

2021-06-15 08:56:15 249

原创 python â\x89¥ 95%编码错误

1.遇到的问题: 大于等号≥编码错误:â\x89¥ 95%(正确≥ 95%)解决方法:对源代码使用编码:response = requests.get(url=url)response.encoding = response.apparent_encoding成功!

2021-04-27 16:02:55 410

原创 pymysql 报错 pymysql.err.ProgrammingError: (1064, “You have an error in your SQL syntax;

1.报错使用了:pymysql.escape_string()可以解决字符串转化单双引号的问题2.第一种方法需要排查出那个字符串有问题,可以打印出sql语句查看,发现字符串中只有一个双引号的问题(本人遇到的问题字符串中有一个左上双引号),解决这个问题的方法是找到对应的词加上第一步的方法。3.最好的方法就是所有都加上pymysql.escape_string()的方法,避免其他在遇到此类问题!...

2021-04-26 09:07:17 11465

原创 文本生成词云图wordcloud

1.安装 jieba :pip install jieba pip install retext = """ """ 一串待处理的文本2.文本预处理 1.使用正则表达式去除文本中的无用字符及特殊符号import reimport jieba# wenbenpattern = re.compile(u'[a-zA-Z\u4E00-\u9FA5]')pattern1 = re.compile(r'[0-9]')d = pattern.findall(text.encode(...

2021-04-25 17:45:42 848 1

原创 Scrapy POST不支持发送payload参数

1.使用scrapy发送post请求,参数为payload类型一般使用:return scrapy.FormRequest(url=url,formdata=data,headers=headers)到这步思路没有问题,问题就处在scrapy暂时不支持post发送payload类型。源码貌似formdata一般用于表单发送数据,为dict类型,而非str,所以获取会报错解决方法:使用如下方法:return scrapy.Request(url=url,

2021-04-22 11:39:13 275

原创 django 报错:‘staticfiles‘ is not a registered tag library. Must be one of

'staticfiles' is not a registered tag library. Must be one of: admin_list admin_modify admin_urls cache i18n l10n log static tz解决方法:将模板文件代码{% load staticfiles %}修改为{% load static %}

2021-04-13 14:13:24 517

原创 django开发知识点4-内置接口调用

内置接口调用1、进阶接口除了常用接口外,还有其他用来提高性能的接口,在下面介绍。 在优化Django项目时,尤其要考虑这几种接口的用法。defer把不需要展示的字段做延迟加载。比如说,需要获取到文章中除正文外的其他字段,就可以通过posts = Post.objects.all() .defer('content'),这样拿到的记录中就不会包含content部分。但是当我们需要用到这个字段时,在使用时会去加载。代码:products=Product.objects.all().defer

2021-04-07 13:43:16 1018

原创 docker 报错 没有安装 WSL 2

报错提示:WSL 2 is not installedInstall WSL using this PowerShell script (in an administrative PowerShell) and restart your computer before using Docker Desktop:Enable-WindowsOptionalFeature -Online -FeatureName $("VirtualMachinePlatform", "Microsoft-Wind

2021-03-15 09:03:24 2759 1

原创 MySQL存在就更新数据记录,不存在就新增记录

案例:MySQL插入数据,存在就更新,不存在就插入;数据库app_test表;字段nam,url,source,statenam,url,source建立联合唯一索引表中创建数据:INSERT INTO app_test (nam,source,url,state) VALUES('zhaomeng','淮安','111111','60') on DUPLICATE key update state=VALUES(state)第一次表为空插入数据第二次插入联合唯一索引..

2021-02-24 15:41:53 579

原创 Tkinter 编写桌面工具

1.使用python3 Tkinker编写操作数据库的桌面并打包成exe2.主要应用本人学习以及实际的使用,代码中尚有不足之处。主要的实现功能为:查询:按时间段查询以及查询当天数;批量更新;使用网格布局的方式(grid)文本框输入读取数据库进行查询的动态适配自己的一类处理需求环境:使用mongodb数据库操作windows系统anconda3tkinterdatetime打包程序看我之前的博文 整体代码如下...

2020-12-11 09:50:23 266

原创 docker使用Redis

本片可以结合我之前的docker下载redis镜像环境为ubutu18docker exec -it redis /bin/bash 进入redispython3 连接redisimport redisclient = redis.Redis(host='localhost',port=6379,db=0)client.sadd()....输入:redis-cliSADD name value 向名为name的集合添加valueSCRAD name 查询集合元素...

2020-11-13 09:05:56 144

原创 fiddler抓包视频

""" 解析视频 可以抓包也可以控制台查看 下载VIP视频 --哪吒之魔童降世 cmd 下合并视频copy/b *.ts 哪吒.mp4"""from multiprocessing import Poolimport requestsclass Vip(object): #构造urls def get_urls(sel...

2020-11-12 15:58:09 5710 12

原创 scrapy 操作MYSQL

scrapy piplines操作mysql数据库:class EducationPipeline: def __init__(self): self.connect = pymysql.connect(host='localhost', port=3306, user='root',

2020-11-12 15:52:02 709

原创 python3操作MYSQL

MySQL数据库:python3安装数据库库:pip install pymysql操作import pymysql连接数据库使用connnect方法:db = pymysql.connect(host="localhost", # 主机port=3306, # 端口号user='root', # 数据库账号password='123456', # 数据库密码,密码是字符串类型,不是int型database='test' # 数据库名)接之后,使用cursor()

2020-11-12 15:50:02 131

原创 mongodb操作整理

docker 安装mongodb:docker 进入mongodb:docker exec -it mongodb /bin/bash一、基本指令:1.显示当前的所有数据库show dbsshow databases2.进入到指定的数据库中use 数据库名数据库不存在时,在插入数据是创建;3.查看当前所处的数据库db4.显示数据库中所有的集合show collections删除集合 db.collection.drop() 删除...

2020-11-12 15:47:37 228

原创 python3 tkinter实现GUI开发

1.使用tkinter开发桌面GUI应用,将常用的数据库操作,开发成桌面的应用。正对的数据库为:Mongodb数据库使用frame框架以及grid布局方式使用的组件:lable标签、entry输入框、text文本、button按钮使用的数据库的语法。查询总数、查询当天的采集数,修改采集状态、查询一段时间的采集量使用案例如下:import tkinterimport pymongoimport datetimefrom PIL import Image,ImageTkdef

2020-11-12 15:45:58 417

原创 python3打包并传递参数

使用python写脚本,但脚本里的参数是变动的、可修改的,有想将文件打包成exe,这时候可以看看本片博文:1.使用pyinstaller包进行打包安装:pip install pyinstaller通过cmd传递参数主要通过:sys.argv[1]代表第一个参数sys.argv[2]代表第二个参数使用案例:import requestsimport sysdef getBaiduHtml(keyword): url = 'https://www.baidu.com/

2020-11-12 15:36:37 842 1

原创 Gerapy部署爬虫

1.先安装pip install gerapy初始化gerapy init 会在当前目录下创建一个gerapy文件 里面有一个projects文件夹用于存放要部署的 scrapy文件,可以放置多个文件等待调度Cd gearpy 目录下 运行 创建数据库 gerapy migrate在当前目录下创建了sqlite.db数据库需要创建账号 gerapy createsuperuser输入账号名 邮件号 密码运行 gerapy runserver...

2020-11-12 15:28:34 380

原创 python3打包项目并传参

1.使用pyinstaller包进行打包安装:pip install pyinstaller通过cmd传递参数主要通过:sys.argv[1]代表第一个参数sys.argv[2]代表第二个参数例:import requestsimport sysdef getBaiduHtml(keyword): url = 'https://www.baidu.com/s?ie=utf-8&f=3&rsv_bp=1&rsv_idx=1&tn=bai..

2020-11-12 15:08:08 586 1

原创 kali linux 安装Docker

kali linux 安装dockerzhaomeng@kali:~$ sudo apt-get install docker docker-compose启动dockerservice docker start报错如下zhaomeng@kali:~$ docker search redisCannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?解决方

2020-08-10 18:41:55 496

原创 kali linux2020桌面切换成win10再切回

切换到win10桌面:应用程序下的常用程序下的其他点击kali undercover mode再次切换就回不到之前的桌面了:解决方法:1、cd 到根目录2、cd .config/3、rm -rf xfec44、reboot

2020-08-10 18:39:29 3340

matplotlib.ipynb

matplotlib.ipynb,图表显示,

2019-11-29

空空如也

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

TA关注的人

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