自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(478)
  • 资源 (2)
  • 收藏
  • 关注

原创 M3新机配置

如果没有弹窗可能你系统太老了,brew只支持Mac三个大版本号。请安装Git后再运行此脚本,在系统弹窗中点击“安装”按钮。在官网下载解压: https://iterm2.com/则按照弹窗提示安装 git 后再次执行该命令。安装完成后,退出当前终端重新打开。按照提示将其移动到 app 文件夹。可知已经安装了 zsh 的终端。查看已安装的 brew 的版本。选择社区版或者专业版进行下载。更多的个性化配置可以参考。

2024-04-17 11:32:21 162

原创 关于 chinesecalendar 在年初的报错

python日历包使用

2024-01-02 10:40:57 945 3

原创 ubuntu 20.04 安装 docker&supervisor

输入 docker 查看提示:因本机是 20.04执行: sudo apt install docker.io安装成功:

2021-06-18 21:45:23 695

原创 小米手机设置代理

点击进入 wifi 详情,点击代理,选择手动,设置代理的主机名和端口(以及不使用代理的网络)

2021-06-13 16:54:59 4505

转载 如何使用 sftp 与远程服务器安全传输文件

关于 FTP在了解 SFTP 之前,我们先看看什么是 FTP 。**FTP( File Transfer Protocol )**文件传输协议,是一种常用来在两终端系统之间传输文件的方法。关于 SFTPSFTP ,即 SSH 文件传输协议( SSH File Transfer Protocol ),或者说是安全文件传输协议( Secure File Transfer Protocol )。SFTP 是一个独立的 SSH 封装协议包,通过安全连接以相似的方式工作。它的优势在于可以利用安全的连接传输文件,

2021-03-06 14:51:57 2892

原创 爬取东方财富的十大成交股

任务说明爬取 http://data.eastmoney.com/hsgt/index.html 东方财富首页的十大成交股信息。分析接口以及参数刷新页面,搜索相关信息, 排序筛选到带有数据的请求。可知: 基础的请求接口是:api = ‘http://dcfm.eastmoney.com/em_mutisvcexpandinterface/api/js/get?’四个方面请求参数分别是:base_post_data = { 'callback': f'jQuery11230725989

2021-01-28 09:34:11 753 1

原创 在 python3 上安装mysqldb

问题描述项目需要用到 mysqldb 模块, 开发环境为 MacOS, python 环境为 3.7。 直接使用 pip install 安装不成功:解决方案根据: https://github.com/PyMySQL/mysqlclient中的安装说明进行:可能异常brew报错:in `initialize’: Version value must be a string; got a NilClass () (TypeError)原因是我升级了macOS Big Sur,Homebr

2021-01-19 10:16:09 316

原创 python+request的重定向与追踪

重定向的状态码301 redirect: 301 代表永久性转移(Permanently Moved)302 redirect: 302 代表暂时性转移(Temporarily Moved )实例请求: http://www.cninfo.com.cn/new/disclosure/detail?plate=szse&orgId=9900023797&stockCode=300424&announcementId=1208372407&announcementTi

2020-10-14 09:31:21 890 1

翻译 翻译: Python 中的异步任务执行(Asynchronous Task Execution In Python)

原文链接https://bhavaniravi.com/blog/asynchronous-task-execution-in-python参考https://sspai.com/post/46912翻译Schedulers are a beautiful piece of code. In computer systems, they are as old as operating systems. In real world they are as old as our alarm clock

2020-10-12 11:31:23 653

原创 在同一张表中使用字段 A 去更新字段 B 的思考

问题描述一个问题,就是我有一张爬虫表。我发现我的 web 时间字段解析出错了以至于出现了未来的时间:以当前的时间为准,查询出错误的数据大概有这些,均来与同一个数据源 大公报, 数据源代码 OrgTableCode 为 1034 。比较苦恼,因为我可能要重新请求一下错误的页面。突然我发现我可以从文章的链接中抽取到这个时间,校验了下这个思路没有问题:update 一下:这样比较好解决了我的问题 。但是之前我有一个比较麻烦的思路:大致是这样的:最终的 _map 将会是一个 id 和发

2020-09-29 17:44:10 403

原创 部署 selenium 的 docker 环境

前言在做模拟登录时,有时需要用到 selenium。主要是看做 js 逆向的难易程度。在本地安装浏览器驱动时,经常要遇到的一个问题就是浏览器升级造成的版本不匹配问题(This version of ChromeDriver only supports Chrome version 81)。 如图:如果需要配套做升级,请参考前文:更加可靠持久,同时方便服务器部署,我们可以使用 docker 来部署 selenium.selenium这里针对 Selenium Grid,它用于分布式自动化测试。

2020-09-18 15:36:54 833

原创 记录 sqlite 常用命令

前情这一篇没有什么太大的意义,主要是在测试创建简单的 django 项目时,默认使用的数据库是 sqlite,所以记录一下简单的操作。了解 sqlite 数据库略常用命令(1) 创建数据库:sqlite3 xxx.sqlite3 (2) 打开已经存在的数据库:sqlite3 xxx.sqlite3 (3) 退出数据库:.exit # 或者 .quit (4) 查看帮助.help (5) 查看数据库文件存放的位置:.databases (6) 查看数据库

2020-09-17 14:50:06 184

原创 在宿主机和容器之间互相复制文件

问题发现在整理文件夹的时候不小心将线上运行的一个项目rm -r 了。有很多最新提交还没有同步到远端。 只有线上测试的docker 容器中有最新的一份项目代码快照。问题解决从容器中拷贝一份最新的代码下来,对比补充到当前提交上。将服务器中的文件夹同步到本地(给出一种做法):rsync -e 'ssh -p 9528' -avz [email protected]:/home/furuiyang/hkland /Users/furuiyang/gitzip/working/Data

2020-09-10 17:19:11 344

原创 Django中celery机制的使用总结

什么是任务队列任务队列是一种跨线程、跨机器工作的一种机制。任务队列中包含称作任务的工作单元。有专门的工作进程持续不断的监视任务队列,并从中获得新的任务并处理。什么是 celerycelery 是一款基于 python 的异步任务处理框架。celery 通过消息进行通信,通常使用一个叫 Broker(中间人) 来协client (任务的发出者) 和 worker (任务的处理者)。 clients 发出消息到队列中,broker 将队列中的信息派发给 worker 来处理。一个 celery 系

2020-09-10 16:13:20 655 2

原创 相似本文去重方案-技术栈

算法simhash + 海明距离简单易懂讲解simhash算法 hash 哈希:https://blog.csdn.net/le_le_name/article/details/51615931simhash算法及原理简介:https://blog.csdn.net/lengye7/article/details/79789206使用SimHash进行海量文本去重:https://www.cnblogs.com/maybe2030/p/5203186.html#_label3py

2020-08-19 15:23:56 256

原创 Mac上python多线程错误:...+[__NSPlaceholderDate initialize]...

问题描述希望以守护进程的模式去运行某个 python 脚本。 该脚本中会开启多线程程序。脚本为单线程时可正常运行, 脚本为多线程时报错:objc[91498]: +[__NSPlaceholderDate initialize] may have been in progress in another thread when fork() was called.objc[91498]: +[__NSPlaceholderDate initialize] may have been in progre

2020-07-25 15:44:55 493

转载 python 中单例模式的实现

单例模式的使用场景很多初学者喜欢用全局变量,因为这比函数的参数传来传去更容易让人理解。确实在很多场景下用全局变量很方便。不过如果代码规模增大,并且有多个文件的时候,全局变量就会变得比较混乱。你可能不知道在哪个文件中定义了相同类型甚至重名的全局变量,也不知道这个变量在程序的某个地方被做了怎样的操作。因此对于这种情况,有种更好的实现方式:单例(Singleton)单例是一种设计模式,应用该模式的类只会生成一个实例。单例模式保证了在程序的不同位置都可以且仅可以取到同一个对象实例:如果实例不存在,会创建一个

2020-07-21 16:27:48 271

原创 Python事件驱动模式简单理解

所有的计算机程序都可以大致分为两类:脚本型(单次运行)和连续运行型(直到用户主动退出)。(1)脚本型:脚本型的程序包括最早的批处理文件以及使用Python做交易策略回测等等,这类程序的特点是在用户启动后会按照编程时设计好的步骤一步步运行,所有步骤运行完后自动退出。(2) 连续运行型:连续运行型的程序包含了操作系统和绝大部分我们日常使用的软件等等,这类程序启动后会处于一个无限循环中连续运行,直到用户主动退出时才会结束。我们要开发的交易系统就是属于连续运行型程序,而这种程序根据其计算逻辑的运行机制不同,又

2020-07-21 16:13:35 946 1

原创 爬取搜狐财经

任务描述爬取搜狐财经的实时新闻信息。搜狐财经网址:https://m.sohu.com/ch/15需要的字段: 标题、链接、发布时间、新闻正文爬取分析根据经验,F12 选择手机模式,向下滚动,观察 XHR 栏:很快找到了我们需要的接口。然后观察接口规律:变化的有两个量: 一个是时间戳,一个是当前页数。...

2020-07-20 17:42:22 371

原创 关于 Python deque 模块的使用

python deque 支持的操作https://my.oschina.net/u/4344754/blog/3411133根据上文,可以大致理解 deque 模块的底层实现原理。deque 支持多种操作:创建一个新的空队列:# 创建空的队列d1 = deque()print(d1) # deque([]) 创建已经存在元素的队列:# 创建已经存在元素的对象:从 iterable (迭代对象) 数据创建。如果 iterable 没有指定,新队列为空。d = deque("pig"

2020-07-17 10:50:57 383

原创 在爬虫中多线程以及队列的应用笔记

为何使用多线程为了提高抓取数据效率:有些网站对访问速度有限制, 这样网站可以可以开启多个线程, 每一个线程使用一个代理, 去提取页面的一部分内容。关于守护线程import threadingimport timedef task(): print("我是需要使用多线程去完成的任务") time.sleep(30) print("线程任务结束")def main(): th1 = threading.Thread(target=task) t

2020-07-16 14:36:25 321

原创 认识 python schedule 模块

简单使用话不多说,安装步骤就此省略。 先来看最简单的一个使用:import pprintimport scheduleimport timedef job(): print("I'm working...")def job1(name): print(name)def main(): """模块简单使用""" schedule.every(10).minutes.do(job) # 每10分钟执行一次 schedule.every().h

2020-07-13 14:25:00 493

原创 如何找出 post 请求的 url 以及相应的请求参数

我们要模拟用户登录,就必须要发送 post 请求。这时就需要知道请求的 url 以及请求参数。通过表单获取使用 chrome 的选择工具,选择表单的输入框,看 Elements 中的定位的位置,向上找 form 标签中 action 中 URL :通过抓包获取勾选perserve log按钮,防止页面跳转找不到url寻找post数据,确定参数- 参数不会变,直接用,比如密码不是动态加密的时候- 参数会变- 参数在当前的响应中- 通过 js 生成...

2020-07-01 14:21:06 6982

原创 Python爬虫代理

代理IP的分类根据代理ip的匿名程度,代理IP可以分为下面四类:透明代理(Transparent Proxy):透明代理虽然可以直接“隐藏”你的IP地址,但是还是可以查到你是谁。匿名代理(Anonymous Proxy):使用匿名代理,别人只能知道你用了代理,无法知道你是谁。高匿代理(Elite proxy或High Anonymity Proxy):高匿代理让别人根本无法发现你是在用代理,所以是最好的选择。在使用的使用,毫无疑问使用高匿代理效果最好从请求使用的协议可以分为:http代理h

2020-07-01 12:58:34 352

原创 python requests 库中的 SSL 证书验证

现在很多网站都要求使用 HTTPS 协议,但是有些网站可能并没有设置好 HTTPS 证书,或者网站的 HTTPS 证书不被 CA 机构认可,这时候,这些网站可能就会出现 SSL 证书错误的提示。比如这个示例网站:https://static2.scrape.cuiqingcai.com/。如果我们用 Chrome 浏览器打开这个 URL,则会提示「您的连接不是私密连接」这样的错误,如图所示:我们可以在浏览器中通过一些设置来忽略证书的验证。我们首先直接请求:import requestsresp

2020-05-30 14:08:01 8366

原创 Python 爬取单个知乎问答

问题起源在知乎上看到一个问题: 求推荐好看的二次元头像的。一个个去翻回答感觉有点麻烦。 想把这个问题下全部的图像抓取到文件夹中慢慢选。分析1 找到接口2 json 中有个字段叫 content,是每个回答的 html 页面。 从其中解析出 img 标签中的头像链接3 知乎的反爬注意加上请求头主要代码import jsonimport requestsfrom lxml import htmlheaders = { "User-Agent": "Mozilla/5.0 (M

2020-05-25 14:00:23 331

原创 关于康熙部首导致的字典查询异常

这篇文章的起因是一个报错,我们来看看:a = {"⽐赛阶段": "16强"}print(a["比赛阶段"])运行结果:为什么查询不出来呢?难道两个比赛阶段不一样?我们进一步测试一下:print("⽐赛阶段" == "比赛阶段")运行结果是:False难道说是其中一个包含了不可见的零宽字符?我们来看看两个字符串的长度:print(len("⽐赛阶段") == len("比赛阶段"))运行答案是 True可以看到,这两个字符串都是4个汉字,说明没有零宽字符。那么为什么他们不一样呢

2020-05-21 00:20:43 650 3

原创 用 python 调用和风天气的 api 爬取天气预报数据

和风天气的天气预报,为个人开发者提供免费的天气预报数据。(有访问次数的限制)。注册开发者账号第一步,我们需要去注册一个开发者账号:网址: https://id.heweather.com/login?redirect=https://console.heweather.com/my/service阅读开发者文档参考:https://dev.heweather.com/docs/getting-started/get-api-key然后我们来看调用的示例代码:没有 python

2020-05-18 22:31:15 2915 1

原创 交易所行情数据采集爬虫

任务描述在每天的盘前以及盘后的时间爬取上交所和深交所发布的当如的行情数据。上交所数据源: http://www.sse.com.cn/market/price/report/深交所数据源: http://www.szse.cn/market/trend/index.html网站更新规律上交所在一天之内,实时更新当天的行情数据。深交所在当天收盘后才会更新当天的数据。上交所行情...

2020-05-14 20:39:12 2521

原创 python 爬虫中的字符串处理

参考https://www.cnblogs.com/BlackStorm/p/6359005.html去除字符串中的空白字符(1)空白字符位于左右两边demo_str = ' Lfuruiyang'ret1 = demo_str.lstrip()print(demo_str) print(ret1) (2) 空白字符在中间# 空白字符在中间 import redemo_str = ' Lfuru iyang 'ret1 = re.sub('\s', '', d

2020-05-12 15:12:26 1018

原创 mongo 课程笔记之基本操作2

使用 find 搜索数组find 支持对数组中的元素进行搜索。假设有一个文档:db.fruit.insert([{ "name" : "Apple", color: ["red", "green" ] }, { "name" : "Mango", color: ["yellow", "green"] }])那么:> db.fruit.find({color: "red"})...

2020-04-26 18:06:46 203

原创 docker 日志相关

来源https://docs.docker.com/engine/reference/commandline/logs/docker logs作用获取 docker 容器的日志。查看帮助docker logs --help$ docker logs [OPTIONS] CONTAINER Options: --details 显示更多的信息 ...

2020-04-24 10:47:53 255

原创 Linux/Mac下文件统计相关

参考https://blog.csdn.net/program_developer/article/details/88831692http://firsh.me/2017/07/02/linux-ls-wc/查看当前文件夹 test_dir 下有多少文件以及文件夹ls test_dir | wc -w查看当前文件夹 test_dir 下有多少个字节数ls test_dir | wc...

2020-04-21 18:08:24 339

原创 全量爬取搜狗词库并且转化为 txt/csv 格式

参考https://blog.csdn.net/u012424313/article/details/82222188https://www.cnblogs.com/yumingle/p/6675487.htmlhttps://blog.csdn.net/python36/article/details/83029661下载原始的 scel 词库文件# coding=utf-8impo...

2020-04-21 15:02:06 1402

转载 mac 中的 zip 和 unzip 命令

转载链接https://blog.csdn.net/yxys01/article/details/73848720zip 一般用法zip -q -r -e -m -o myfile.zip someThing 其中, myfile.zip 是打包后的文件, someThing 是需要打包的文件。参数的含义:-q 表示不显示压缩进度状态;-r 表示子目录子文件全部压缩为zip;...

2020-04-21 09:38:57 2783

原创 全量爬取百度词库的词条

参考https://zhidao.baidu.com/question/84723766.html批量获取关键词base_url = 'http://baike.baidu.com/view/{}.html'headers = { "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,...

2020-04-20 16:13:16 2480

原创 mongo 课程笔记之基本操作

插入插入一条数据> db.fruit.insertOne({"name": "Apple"}){ "acknowledged" : true, "insertedId" : ObjectId("5e9abd1db647be1aca615bb4")}acknowledged 表示插入成功,insertedId 是该插入数据的 _id 字段。插入多条数据> db.fr...

2020-04-18 17:30:41 248

原创 mongo 课程笔记之下载 mongo compass

步骤在该地址选择对应的版本进行下载:https://www.mongodb.com/download-center/compass安装完成后按照提示进行连接就可以可视化看到导入的数据了。

2020-04-18 16:32:38 205

原创 mongo 课程笔记之导入测试数据

步骤下载 mongodb 测试文件curl -O -k https://github.com/geektime-geekbang/geektime-mongodb-course/blob/master/aggregation/dump.tar.gz解压tar -xvf dump.tar.gz导入数据mongorestore -h 127.0.0.1:27017 du...

2020-04-18 16:19:29 458

原创 macOS 升级后安装 mongodb 无法启动, 出现 Read-only file system

问题描述无法在 / 目录下创建文件夹。 mongod 服务端的数据目录就在 /data/db , 造成无法启动。参考https://blog.csdn.net/weixin_43689776/article/details/102757245https://www.v2ex.com/t/607387https://www.v2ex.com/t/607330https://zhua...

2020-04-18 14:35:06 446

空空如也

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

TA关注的人

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