首页
留言
友链
架子鼓
更多
壁纸
直播
时光机
关于
Search
1
谷豆电视直播代理源码,谷豆代理原理解析
45,193 阅读
2
华为鸿蒙系统无法安装 xapk APP 闪退 ( youtube vanced ) 的解决办法
27,055 阅读
3
[转载]青龙面板+Ninja从零安装教程
19,156 阅读
4
docker 之 typecho 镜像-不推荐
13,125 阅读
5
typecho插件 - 在线下载主题到服务器 - addTheme 发布
8,906 阅读
技术
php
linux
mysql
redis
typecho
nginx
go
python
dnmp
工具
日记
理财日记
生活日记
生活
kindle 资源
公告
虚拟机
登录
Search
标签搜索
msyql
主从
华为
鸿蒙
xapk
闪退
APP 闪退
kindle
mobi
docker
pip
alpine
梦浪的小虾米
累计撰写
147
篇文章
累计收到
588
条评论
首页
栏目
技术
php
linux
mysql
redis
typecho
nginx
go
python
dnmp
工具
日记
理财日记
生活日记
生活
kindle 资源
公告
虚拟机
页面
留言
友链
架子鼓
壁纸
直播
时光机
关于
搜索到
81
篇与
的结果
2021-11-03
[转载]python 自动卖出京东黄金
上个月看到虎友买卖京东积存金的,我也随手买了点。金价一直在 385 上下波动,我在 381 元时买入了两次,然后 388 左右卖出(并不推荐这样做,投机短线交易不可取),都小赚了一点点。老是看金价或者关注自动推送(是的,我还简单弄了个钉钉机器人监控价格哈哈)的话还是有点累,就想着拿 python 写个自动交易卖出的。看了请求加密一堆参数也懒得分析了,selenium 开干。大致如下,自行改造吧。简单写写,写的比较乱。只做了卖出,买入还是谨慎些,没考虑做。需要 Python3 环境,需要修改的地方就是那些 xxxxxxxxxxxxxxx。建议单步调试代码,看一下大致逻辑再使用。或者仅供参考,自己重新实现。20210201 11:00 成功自动卖出import json import sys import traceback from selenium import webdriver import time, requests def getLatestPrice(): url = 'https://api.jdjygold.com/gw/generic/hj/h5/m/latestPrice?reqData=%7B%7D' response = requests.get(url=url) print(response) print(response.headers) jsonRes = json.loads(response.content) price = float(jsonRes['resultData']['datas']['price']) print(time.strftime("%Y-%m-%d %H:%M:%S ", time.localtime()), '最新价', price) return price def openJdjyGold(): webdriverPath = "C:\Program Files\Google\Chrome\Application\chromedriver.exe" # webdriver路径 activityUrl = "https://m.jdjygold.com/finance-gold/newgold/index" sellGoldUrl = "https://m.jdjygold.com/finance-gold/newgold/sellGold/" # 如果直接去卖金的地方,可能来不及注入cookie browser = webdriver.Chrome(executable_path=webdriverPath) browser.set_window_size('400', '700') browser.get(activityUrl) browser.delete_all_cookies() # 读取cookie写入。第一次使用时注释掉这段,手动登陆一次后用下面的更新存储。自行改造啦。 with open('cookies.json', 'r', encoding='utf-8') as f: listCookies = json.loads(f.read()) for cookie in listCookies: browser.add_cookie({ 'domain': cookie['domain'], 'name': cookie['name'], 'value': cookie['value'], 'path': '/', 'expires': None }) # 更新一下文件存储的cookie cookies = browser.get_cookies() jsonCookies = json.dumps(cookies) with open('cookies.json', 'w') as f: f.write(jsonCookies) browser.get(sellGoldUrl) return browser def sellGold(): print('开始卖出') browser = openJdjyGold() time.sleep(2) # 已经到卖出的页面了 # 全部卖出的文字按钮,可以优化为 find_elements_by_class_name sellAllBtn = browser.find_elements_by_css_selector( "#app > div > div.inputBox > div.input_content > div.input-row.flex.flex-align-center > p") sellAllBtn[0].click() # 点一下卖全部,填入数量 time.sleep(0.5) # 勾选我已阅读xxx checkIHaveReadRules = browser.find_element_by_class_name("check-icon") checkIHaveReadRules.click() time.sleep(0.5) # 卖出页面下方的 立即卖出 startSellBtn = browser.find_element_by_class_name("jrm-common-btn") startSellBtn.click() time.sleep(2) # 然后是输入密码,找到全部密码按键存到dict passwordBtnDict = {} allPasswordBtn = browser.find_elements_by_class_name("sys-itemW") for btnItem in allPasswordBtn: if btnItem.text != '': # 有两个按键用不上 passwordBtnDict[btnItem.text] = btnItem payPassword = "xxxxxxxxxxxxxxx" # 支付密码,不要泄露了............................. for bitPwd in payPassword: passwordBtnDict[bitPwd].click() # 输入完最后一位,就自动确定了 # 然后忘了还有没有进一步的确定。。。。。。 time.sleep(10) sendDingtalkNotify('完成卖出') browser.quit() def autoSellGold(expectPrice): while True: try: latestPrice = getLatestPrice() if latestPrice > expectPrice: sendDingtalkNotify('''最新价{}元/g,高于预期的{}元/g,准备全部卖出'''.format(latestPrice, expectPrice)) sellGold() sys.exit(0) else: print('未达预期', expectPrice, ',不卖') except Exception as e: traceback.print_exc() sendDingtalkNotify('京东积存金自动交易出错,需要处理') sys.exit(1) finally: time.sleep(30) def sendDingtalkNotify(msg): print('sendDingTalkMsg', msg) url = 'https://oapi.dingtalk.com/robot/send?access_token=xxxxxxxxxxxxxxx' headers = { 'Content-Type': 'application/json' } data = { "msgtype": "text", "text": { "content": "[bot]" + msg + "@xxxxxxxxxxxxxxx" }, "at": { "atMobiles": ["xxxxxxxxxxxxxxx"], "isAtAll": False } } response = requests.post(url=url, headers=headers, json=data) print(response.content) if __name__ == '__main__': buyPrice = 383 # 买入价格,如果想不亏的话,需要的涨幅应该是手续费0.3% minimumPrice = round(buyPrice * 1.003, 3) print('''{}买入的话,最少应该{}才能卖'''.format(buyPrice, minimumPrice)) expectPrice = minimumPrice * 1.01 # 期望价格,可以自己改一下 autoSellGold(expectPrice)
2021年11月03日
1,269 阅读
0 评论
0 点赞
2021-10-20
vmware 共享目录后,使用 npm 或者 yarn 报错
问题把 windows 目录共享给 vmware 下的 linux 后,发现 npm 或者 yarn 的生成命令(指的是各种生成目录的命令,比如拉取拓展包),无法正常拉取寻找问题的原因通过一轮的搜索得知:vmware 共享目录后,在 vmware 里面使用 npm 确实无法创建目录。然后作者给了解决方案,但是本文作者不予采纳。解决方案本文作者的解决方案恰巧是灵感一瞬间:在 linux 里面执行不行,那么是不是在 windows 上执行 npm 或者 yarn 就行了?于是试了一下,果然可以。
2021年10月20日
2,925 阅读
0 评论
0 点赞
2021-10-08
把 windows 10 目录挂载到 vmware 下的 docker 并进行 php 本地开发
前言作者使用 win 进行 PHP 代码化开发,真香。但是容易出现各种场景下出现一些因为系统不一样而导致的掉头发的问题。所以今天就来解决环境不一致的问题系统说明本地 : win10 + vscode + vmware 16 pro (此处无影响,仅供参考)linux : ubuntu 18.04docker 20.10.8(此处无影响,仅供参考)docker 容器里面的 php 版本为 7.4 (此处无影响,仅供参考)docker 容器内 nginx 为 1.21 (此处无影响,仅供参考) 最终目标环境作者需要在 win 本地同步修改 php 文件,文件实时同步到 docker 目录下,并且作者可以实时刷新 web 页面看到修改后的页面效果。 整体实现逻辑使用 vmware 的目录共享功能将 win本地的目录同步到 vm 下的 linux 内,然后 docker 启动并挂载相对应的目录。具体操作流程将 vmware 的共享目录设置为本地对应的代码目录。(如下图:设置>选项>共享文件夹>总是启动>添加>确认)此时,windos 方面的目录配置已经完成。安装 vmtoos。首先可以确认一下自己的 linux 环境是否安装了 vmtools 。命令为:which vmhgfs-fuse 。如果有这个命令,则可以直接进行第 3 步。如果没有这个命令,则需要通过 vmware 菜单栏进行安装。 如果您还是无法正常安装的话,建议本文附录的链接进行安装。将共享目录挂载到 linux 。请将 下文中的 您的目录 替换为 您的 linux 环境的对应目录, 您的用户id和用户组 id 建议为 docker 的 id, 如果不知道那就使用 root 。umask 对应的权限为 00 表示为 0777vmhgfs-fuse .host:/ /您的目录 -o allow_other -o uid=您的用户id -o gid=您的用户组id -o nonempty -o umask=00配置 nginx 里面对应网站的配置(主要是修改目录指向,指向对应目录),如下图:给的截图仅供参考,注:我把 app 目录映射到 docker 里面了,所以我直接 app/mount/ ,您需要改成您的 docker 映射的载入的目录。启动 docker 容器,载入对应的映射配置。打开浏览器,即可正常访问 。附录出现无法解压的问题 :https://blog.csdn.net/maureen226/article/details/78947859VMware 上 Linux 虚拟机和 Windows 共享文件夹 :https://www.cnblogs.com/jixiaohua/p/11774240.html开机重启后挂载丢失:https://blog.csdn.net/JinlonW5/article/details/102790900?utm_medium=distribute.pc_aggpage_search_result.none-task-blog-2~all~baidu_landing_v2~default-1-102790900.nonecase用 vmhgfs-fuse .host:/ /mnt/hgfs 挂载后需要超级用户才能 ls hgfs :https://bbs.csdn.net/topics/392053153vmware 官方文档:https://docs.vmware.com/cn/VMware-Workstation-Pro/16.0/com.vmware.ws.using.doc/GUID-AB5C80FE-9B8A-4899-8186-3DB8201B1758.html解决 VMware 中共享文件夹 hgfs 的权限问题 https://jarviswwong.com/ubuntu-vmware-hgfs-permissions-problem.htmlumark 详解: http://c.biancheng.net/view/764.html其它问题下列的问题第一次遇到了,但是我的解决方案是确认权限问题,而网上给的是如下的解决方案。并未测试,自行判断最后加载网站的时候可能会出现 file not found 之类的错误 打开文件: usr/local/php/etc/php.ini,修改以下配置把cgi.fix_pathinfo=0 改为 cgi.fix_pathinfo=1把 ;cgi.force_redirect=1 改为 cgi.force_redirect=0修改php-fpm.conf里面的user和group都为root,然后执行命令php-fpm -R 就ok最后 & 鸣谢感谢所有写文章的大佬给了我解决方案
2021年10月08日
4,600 阅读
5 评论
0 点赞
2021-10-06
vmware 里面的 ubuntu 在桥接模式的上网配置-傻瓜式
前言追梦人,追梦魂,一天不折腾就不舒服斯基环境说明博主的 vm 版本 16 proubuntu 版本 18.04需求说明要求可以上网,不能上网就不能看~片~代码,那还说个吊操作说明大致操作先配置 vm 的虚拟网卡重启 ubuntu 网络重启电脑的网络对应的操作地址:https://blog.csdn.net/CGS_______/article/details/78987312 按照这个操作以上是大家的通用操作说明,如果你操作后可以看片的话,那就完我的环境当然不会那么简单就解决问题。我的网络还需要修改指定 dns . 修改一个好用的 dns 对你的网络来说至关重要,但是我需要那么重要吗?嗯, 我随便选了一个:114.114.114.114。刚刚又看了一眼上文的那个文章,发现文章里面并没有说 静态ip 的事情,那我就得说一下,不然怎么能表现是傻瓜式教程呢 首先得说一下为什么要用静态 ip因为我需要每次重启 vm 后 ip 不变,这样我才能通过 ssh 去连接那么最简单的设置方式是什么呢?我估计大多数在本地使用 vm 的用户都是安装了图形化界面了,这是前提,如果你没有安装,那就去百度怎么设置静态 ip 。我是小白,我只说我会的按照图中框起来的操作地址就是 你要 ssh 登陆的地址子网掩码就是 255.255.255.0网关就是你的路由器 网关 ,我的网关是 192.168.123.1 windows 可以通过 cmd>ipconfig 查看 mac 自行百度 最后一步图中选项打开的就关闭在打开,关闭的就是直接打开。然后就完成了。 测试一下能不能上网方式 1打开 火狐随便输入一个东西,看看能不能上网方式 2打开 ubuntu 终端ping baidu.com 如下图所示就可以正常上网了附录常用dns114DNSDNS地址:114.114.114.114 114.114.115.115阿里DNSDNS地址:223.5.5.5 223.6.6.6百度DNSDNS地址:180.76.76.76DNS派DNS地址:电信:首选:101.226.4.6 联通:首选:123.125.81.6 移动:首选:101.226.4.6 铁通:首选:101.226.4.6OneDNSOneDNS主页:南方:112.124.47.27 北方:114.215.126.16Google DNSDNS地址:8.8.8.8 8.8.4.4腾讯 DNS119.29.29.29182.254.118.118CNNIC1.2.4.8210.2.4.8鸣谢dns 参考文章 :https://www.landian.vip/archives/21724.htmldns 参考文章 : https://zhuanlan.zhihu.com/p/53958870本文参考地址:https://blog.2pp.link 本文参考地址:https://blog.csdn.net/CGS_______/article/details/78987312
2021年10月06日
1,461 阅读
0 评论
0 点赞
2021-10-01
docker 里面安装 npm 需要的前置依赖[傻瓜式]
前言作者最近在学 docker + laravel 。环境镜像说明作者使用的是 node:alipine 镜像包。里面除了最小镜像 + node 外,就啥也没有了问题众所周知,laravel 的一些依赖包需要使用 npm 进行一系列的操作,作者还没有搞懂是干嘛的,但是还是秉着有问题就上的原则,解决这些问题npm 需要使用最新的 python 。 没搞懂,为啥要使用最新的 pythonnpm 需要使用 make 指令 解决方案虽然没有搞懂为啥需要 python 和 make ,但是既然需要,那就安排上。在 Dockerfile 中增加如下一段指令。简单来说就是让它安装 git python3 以及编译环境RUN apk add --no-cache git python3 gcc g++ make libffi-dev openssl-dev libtool修改前的 DockerfileFROM node:alpine RUN apk add --no-cache git 修改后的 DockerfileFROM node:alpine RUN apk add --no-cache git python3 gcc g++ make libffi-dev openssl-dev libtoolend修改完成后,重新使用 Dockerfile 生成镜像,生成成功后,就可以执行 npm install 命令了。附录构建镜像docker build -t 镜像名字 指定的目录启动容器docker run -dit 镜像名字 这里还有其它你需要的指令。鸣谢参考文章:https://www.maxbon.cn/2019/09/20/137.htmlhttps://www.cnblogs.com/xy14/p/11980272.html
2021年10月01日
3,714 阅读
0 评论
1 点赞
1
...
13
14
15
...
17