Giter Club home page Giter Club logo

jd-coin's People

Contributors

caoz avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

jd-coin's Issues

新的双签能否支持

京东app和京东金融都签完,有个双签领京豆 谢谢大神。
还有 多个账号怎么处理

help 使用 QT 方式登录时的报错

mac 系统
python版本 pyenv 方式安装的 3.6.2

QQ登录方式不成功
选择使用QT方式登录时,python 意外退出,浏览器窗口打开失败

返回的错误信息如下

.pyenv/versions/3.6.2/lib/python3.6/_strptime.py", line 362, in _strptime
    (data_string, format,  format_regex))
ValueError: time data 'Sat, 09-Sep-2017 13:02:50 GMT' does not match format '%a, %d-%b-%Y %H:%M:%S GMT' ... re.compile('(?P<a>\\一|\\二|\\三|\\四|\\五|\\六|\\日),\\s+(?P<d>3[0-1]|[1-2]\\d|0[1-9]|[1-9]| [1-9])-(?P<b>\\ 1|\\ 2|\\ 3|\\ 4|\\ 5|\\ 6|\\ 7|\\ 8|\\ 9|10|11|12)-(?P<Y>\\d\\d\\d\\d)\\s+(?P<H>2[0-3]|[0-1]\\d|\\d):(?P<M>, re.IGNORECASE)

Sat, 09-Sep-2017 13:02:50 GMT
format_regex 是输出的新的打印,其中匹配星期部分 %a 是走了 中文星期的配置。

有没有遇到相似情况的朋友
系统环境下时间匹配问题,该从何处下手解决?

京东会员签到突然出错

非常感谢作者,一直很好用。

原本运行正常。今天突然出现问题。
输出如下:

INFO: Job Start: 京东会员页签到领京豆
2018-06-23 15:11:16,153 jobs[daka] INFO: 登录状态: True
2018-06-23 15:11:16,557 jobs[bean] INFO: 今日已签到: False; 现在有 750 个京豆.
2018-06-23 15:11:17,052 root[main] ERROR: # 任务运行出错: JSONDecodeError('Expecting value: line 2 column 1 (char 1)',)
Traceback (most recent call last):
  File "app/main.py", line 23, in main
    job.run()
  File "/Users/Charles/GitProjects/JD-Coin/app/job/daka.py", line 43, in run
    self.job_success = self.sign()
  File "/Users/Charles/GitProjects/JD-Coin/app/job/bean.py", line 40, in sign
    response = self.session.get(self.sign_url, params=payload).json()
  File "/Users/Charles/.local/share/virtualenvs/JD-Coin-u1aYOaCt/lib/python3.6/site-packages/requests/models.py", line 892, in json
    return complexjson.loads(self.text, **kwargs)
  File "/usr/local/Cellar/python/3.6.5_1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/json/__init__.py", line 354, in loads
    return _default_decoder.decode(s)
  File "/usr/local/Cellar/python/3.6.5_1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/json/decoder.py", line 339, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "/usr/local/Cellar/python/3.6.5_1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/json/decoder.py", line 357, in raw_decode
    raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 2 column 1 (char 1)

请问是什么问题呢?

Compatibility issue with WSL.

Environment

Windows 10 1709 16299.19
WSL kernel: 4.4.0-43-Microsoft
Python v3.5.2
pip 9.0.1 from /home/explorare/.local/lib/python2.7/site-packages (python 2.7)

Error log:

Could not find a version that satisfies the requirement PyQT5 (from -r requirements.txt (line 2)) (from versions: )
No matching distribution found for PyQT5 (from -r requirements.txt (line 2))

mac下,qt-browser分支登录时候报错.

系统 : mac os 10.12.6
python : 3.6.2
ps : python 是使用 pyenv安装的.
在打开浏览器窗口的一瞬间就崩溃了
运行的时候报错如下:

2017-07-31 09:24:48,789 jobs[daka] INFO: 登录状态: False
2017-07-31 09:24:48,789 jobs[daka] INFO: 进行登录...
Traceback (most recent call last):
  File "/Users/adam/Documents/JD-Coin/app/browser.py", line 75, in cookie_added
    self.cookies.set(cookie.key, cookie)
  File "/Users/adam/.pyenv/versions/3.6.2/lib/python3.6/site-packages/requests/cookies.py", line 213, in set
    c = morsel_to_cookie(value)
  File "/Users/adam/.pyenv/versions/3.6.2/lib/python3.6/site-packages/requests/cookies.py", line 484, in morsel_to_cookie
    time.strptime(morsel['expires'], time_template)
  File "/Users/adam/.pyenv/versions/3.6.2/lib/python3.6/_strptime.py", line 559, in _strptime_time
    tt = _strptime(data_string, format)[0]
  File "/Users/adam/.pyenv/versions/3.6.2/lib/python3.6/_strptime.py", line 362, in _strptime
    (data_string, format))
ValueError: time data 'Wed, 30-Aug-2017 01:25:36 GMT' does not match format '%a, %d-%b-%Y %H:%M:%S GMT'
[1]    37119 abort      python ~/Documents/JD-Coin/app/main.py

issues-keyerror

拉了最新代码。
运行报错如下:
2017-06-08 23:14:35,821 root[main] ERROR: # 任务运行出错: KeyError('signText',)
Traceback (most recent call last):
File "C:/Users/lifei/PycharmProjects/JD-Coin/app/main.py", line 23, in main
job.run()
File "C:\Users\lifei\PycharmProjects\JD-Coin\app\job\daka.py", line 41, in run
self.job_success = self.sign()
File "C:\Users\lifei\PycharmProjects\JD-Coin\app\job\bean_app.py", line 52, in sign
message = as_json['signText']
KeyError: 'signText'
print了 as_json {'status': 4} 字典里只有这个输出,所以报了keyerror,这个知道什么原因吗?3q

签到出错,请看是否为个例。

macOS: 10.13.5
Python: 3.7

certifi==2018.4.16
chardet==3.0.4
cssselect==1.0.3
idna==2.7
lxml==4.2.3
PyQt5==5.11.2
PyQt5-sip==4.19.12
pyquery==1.4.0
requests==2.19.1
urllib3==1.23

终端输出:

2018-07-10 08:54:33,066 root[config] INFO: 使用配置文件 "config.json".
2018-07-10 08:54:33,204 root[main] INFO: # 从文件加载 cookies 成功.
2018-07-10 08:54:33,205 jobs[daka] INFO: Job Start: 京东客户端钢镚打卡
2018-07-10 08:54:33,463 jobs[daka] INFO: 登录状态: True
2018-07-10 08:54:33,463 jobs[daka_app] INFO: 今日已打卡: True
2018-07-10 08:54:33,464 jobs[daka] INFO: Job End.
2018-07-10 08:54:33,464 jobs[daka] INFO: Job Start: 京东客户端签到领京豆
2018-07-10 08:54:33,643 jobs[daka] INFO: 登录状态: True
2018-07-10 08:54:33,945 jobs[bean_app] INFO: 今日已签到: True; 签到天数: 51; 现有京豆: 944
2018-07-10 08:54:33,945 jobs[daka] INFO: Job End.
2018-07-10 08:54:33,945 jobs[daka] INFO: Job Start: 流量加油站签到领流量
2018-07-10 08:54:33,999 jobs[daka] INFO: 登录状态: True
2018-07-10 08:54:34,211 jobs[data_station] INFO: 今日已签到: True; Message: 您今日已签到.
2018-07-10 08:54:34,211 jobs[daka] INFO: Job End.
2018-07-10 08:54:34,211 jobs[daka] INFO: Job Start: 京东会员页签到领京豆
2018-07-10 08:54:34,402 jobs[daka] INFO: 登录状态: False
2018-07-10 08:54:34,402 jobs[daka] INFO: 进行登录...
[29400:84483:0710/085435.677244:ERROR:adm_helpers.cc(73)] Failed to query stereo recording.
2018-07-10 08:54:35.861 QtWebEngineProcess[29400:1796455] NSColorList could not parse color list file /System/Library/Colors/System.clr
2018-07-10 08:54:35.862 QtWebEngineProcess[29400:1796455] Couldn't set selectedTextColor from default ()
[29400:775:0710/085435.959926:ERROR:BudgetService.cpp(160)] Unable to connect to the Mojo BudgetService.
[29400:84483:0710/085515.492331:ERROR:stunport.cc(88)] Binding request timed out from 0.0.0.x:63696 (any)

表现:Dock 栏中出现名为 Python 图标为京东的程序,但不显示网页窗口。

能不能帮忙添加进店领金豆任务

能不能帮忙添加进店领金豆任务
任务地址:
http://bean.jd.com/myJingBean/list#earnBean

1、获取可领金豆店铺地址:
def get_shops():
headers['Referer'] = 'https://home.jd.com/'
response = s.get(bean_url, headers=headers)
soup = BeautifulSoup(response.text, 'lxml')
bean_shop_list = soup.find_all('a', class_='s-btn')
return bean_shop_list

2、进店领金豆
def sign_shop(shop_url):
try:
headers['Referer'] = str(shop_url)
response = s.get(shop_url, headers=headers)
soup = BeautifulSoup(response.text, 'lxml')
# 获取店铺 id
shop_id = soup.find(id='shop_id')['value']
# 拼接签到地址
sign_url = 'https://mall.jd.com/shopSign-{}.html'.format(shop_id)
s.get(sign_url, headers=headers)
print('签到成功:{}'.format(shop_url))
except Exception as error:
print('签到失败:{}'.format(shop_url))
print(error)

签到逻辑

cookie应该是隔上一段时间就会失效,现在程序是仅在程序运行的时候加载cookie,发现失败就用QQ登陆,并且保存cookie,但第二个签到项目的时候还会再QQ登录一次,能不能读取前一次签到的cookie

Binding request timed out from 0.0.0.x:55839

OS:win7
python: 3.5.3

  1. 没有小白卡,貌似打卡就会失败
js: A Parser-blocking, cross-origin script, https://h5.360buyimg.com/ws_js/gatherInfo.js, is invoked
 via document.write. This may be blocked by the browser if the device has poor network connectivity.
 See https://www.chromestatus.com/feature/5718547946799104 for more details.
js: A Parser-blocking, cross-origin script, https://h5.360buyimg.com/ws_js/gatherInfo.js, is invoked
 via document.write. This may be blocked by the browser if the device has poor network connectivity.
 See https://www.chromestatus.com/feature/5718547946799104 for more details.
js: Synchronous XMLHttpRequest on the main thread is deprecated because of its detrimental effects t
o the end user's experience. For more help, check https://xhr.spec.whatwg.org/.
A Parser-blocking, cross-origin script, https://h5.360buyimg.com/ws_js/gatherInfo.js, is invoked via
 document.write. This may be blocked by the browser if the device has poor network connectivity. See
 https://www.chromestatus.com/feature/5718547946799104 for more details.
A Parser-blocking, cross-origin script, https://h5.360buyimg.com/ws_js/gatherInfo.js, is invoked via
 document.write. This may be blocked by the browser if the device has poor network connectivity. See
 https://www.chromestatus.com/feature/5718547946799104 for more details.
[1776:11636:0920/191003.239:ERROR:stunport.cc(89)] Binding request timed out from 0.0.0.x:52287 (any
)
  1. 京东会员页签到领京豆 , 又一次弹出浏览器,这次登录要验证码,登录后出现
2017-09-20 19:13:03,566 jobs[daka] INFO: 登录状态: False
2017-09-20 19:13:03,566 jobs[daka] INFO: 进行登录...
[16024:5736:0920/191323.145:ERROR:stunport.cc(89)] Binding request timed out from 0.0.0.x:55839 (any
)

会卡在这里,强退浏览器才能终止

  1. 强退2次后貌似就不会弹浏览器窗口了,出现下面这种错误
2017-09-20 19:18:23,251 jobs[bean] INFO: 今日已签到: False; 现在有 6639 个京豆.
2017-09-20 19:18:23,572 root[main] ERROR: # 任务运行出错: Exception('token 未找到.',)
Traceback (most recent call last):
  File "main.py", line 23, in main
    job.run()
  File "E:\Workspace\tools_github\JD-Coin\app\job\daka.py", line 43, in run
    self.job_success = self.sign()
  File "E:\Workspace\tools_github\JD-Coin\app\job\bean.py", line 34, in sign
    token = self._get_token()
  File "E:\Workspace\tools_github\JD-Coin\app\job\bean.py", line 57, in _get_token
    raise Exception('token 未找到.')
Exception: token 未找到.
2017-09-20 19:18:23,575 jobs[daka] INFO: Job Start: 京东金融签到领京豆
2017-09-20 19:18:23,883 jobs[daka] INFO: 登录状态: True
2017-09-20 19:18:23,977 root[main] ERROR: # 任务运行出错: KeyError('isSign',)
Traceback (most recent call last):
  File "main.py", line 23, in main
    job.run()
  File "E:\Workspace\tools_github\JD-Coin\app\job\daka.py", line 40, in run
    if self.is_signed():
  File "E:\Workspace\tools_github\JD-Coin\app\job\bean_jr.py", line 18, in is_signed
    signed = data['isSign']
KeyError: 'isSign'
=================================
= 任务数: 5; 失败数: 2
= 失败的任务: ['京东会员页签到领京豆', '京东金融签到领京豆']
=================================

PS: 我以前搞得京东领豆失效了很久了,一直懒得弄,今天闲来搜搜, 结果就看到这个项目,果断点赞

PS2: 话说为啥要用QT内置的浏览器,记得bug不少, selenium 不是更好?

活动好像结束了

jobs[red_packet] INFO: 领取结果: 本次活动已结束~

= 失败的任务: ['京东小金库现金红包']

最近打开好几次都是这样

现在有个任务失败了。

2017-06-08 17:59:48,065 jobs[daka] INFO: Job Start: 京东客户端签到领京豆
2017-06-08 17:59:48,515 jobs[daka] INFO: 登录状态: True
2017-06-08 17:59:49,975 jobs[bean_app] INFO: 今日已签到: False; 签到天数: None;
现有京豆: None
2017-06-08 17:59:50,065 jobs[bean_app] INFO: 签到成功: False; Message: 今日已签
到,已翻牌,共领<span>3</span>京豆
2017-06-08 17:59:50,075 jobs[daka] INFO: Job End.

运行错误,如图

我是在Ubuntu的VPS上跑的,为何会出现这种问题?求教
root(@hyc-vps: /app# python main. py

2018-03-0618:57:09,215root[ config]INF:使用配置文件 config.son

Traceback (most recent call Last)

File main. py, Line 10, in <module

from job import jobs -all

File /root/app/job/--init--py, Line 6, in from .bean import Bean

File /root/app/job/bean. py, Line 4, in < module>

from.daka import Daka

File /root/app/job/daka. py, Line 5, in import browser

File /root/app/browser. py, Line 9, in

from Pyqt5. Qtgui import Qicon

Importerror: LIBGL So1: cannot open shared object file: No such file or directory

centos 7 INFO: 进行登录... 然后就没了 也没有报错

RT,没有返回任何信息!


[root@jd/root/JD-Coin-browser]
#python app/main.py
2018-06-07 19:00:13,889 root[config] INFO: 使用配置文件 "config.json".
2018-06-07 19:00:14,002 jobs[daka] INFO: Job Start: 京东客户端钢镚打卡
2018-06-07 19:00:14,134 jobs[daka] INFO: 登录状态: False
2018-06-07 19:00:14,134 jobs[daka] INFO: 进行登录...

[root@jd/root/JD-Coin-browser]
#

又发现一个 签到 京东白条公众号

今天还款的时候看到提示,说关注微信 京东白条 可以签到。
实际操作是关注之后的三个预制菜单中间那个就会导向签到地址。

试了下与现在的任务没有重复,但是隐藏在微信里面能不能搞就不知道了。

为何不用cookies直接登录?

我尝试在VPS上登录,发现QT5模块没法用。

所以看了下源码,然后把browser.py全部注释掉了,接着把本地的data/cookies 拷贝到VPS上。 就可以顺利执行了。

所以综合来说,用到QT5就是为了获取cookies。 为何不直接读取文件呢?

在VPS用QT5上还是太蛋疼了啊,就算是本地,安装了那么多依赖,也是累赘啊

怎么样在windows计划任务里自动执行呢

把密码写进config 了然后写了个bat脚本放计划任务里
但是貌似总会卡在领钢崩那里。
自己手动打开测试一下,正常是要弹出QT5那个浏览器,貌似计划任务里无法弹出,然后就卡住了,看了下后台6个python加6个qt5进程,点了20%CPU。
windows下怎么样能完美自动签到

ssh连接ubuntu 并设置了virtualenv环境,运行报错!

在win10的环境下运行正常,在ubuntu中运行失败:
ubuntu是用ssh进行连接

详情如下:
(qt5) python@python-HP-ProBook-4520s:~/projects/JD-Coin$ python app/main.py
2018-05-09 19:29:38,175 root[config] INFO: 使用配置文件 "config.json".
2018-05-09 19:29:38,175 root[config] WARNING: 配置文件不存在, 使用默认配置文件 "config.defaul
t.json".
2018-05-09 19:29:38,176 root[config] INFO: 用户名/密码未找到, 自动登录功能将不可用.
Traceback (most recent call last):
File "app/main.py", line 11, in
from job import jobs_all
File "/home/python/projects/JD-Coin/app/job/init.py", line 6, in
from .bean import Bean
File "/home/python/projects/JD-Coin/app/job/bean.py", line 1, in
from pyquery import PyQuery
ImportError: No module named 'pyquery'

没有图形界面怎么登录账号呢?....

安装依赖后,添加josn,报错
2017-11-30 16:52:21,004 root[config] INFO: 使用配置文件 "config.json".
Traceback (most recent call last):
File "./main.py", line 11, in
from job import jobs_all
File "/root/JD-Coin/app/job/init.py", line 6, in
from .bean import Bean
File "/root/JD-Coin/app/job/bean.py", line 4, in
from .daka import Daka
File "/root/JD-Coin/app/job/daka.py", line 5, in
import browser
File "/root/JD-Coin/app/browser.py", line 9, in
from PyQt5.QtGui import QIcon
ImportError: libGL.so.1: cannot open shared object file: No such file or directory

ModuleNotFoundError: No module named 'pyquery'

Environment:

Windows 10 1709 build 16299.19
Python 3.6.3

Commit with this issue

6d804e2

Error log:

> python main.py
2017-11-03 17:04:30,031 root[config] INFO: 使用配置文件 "config.json".
Traceback (most recent call last):
  File "main.py", line 13, in <module>
    from job import jobs_all
  File "C:\Users\Explorare\Documents\GitHub\JD-Coin\app\job\__init__.py", line 6, in <module>
    from .bean import Bean
  File "C:\Users\Explorare\Documents\GitHub\JD-Coin\app\job\bean.py", line 1, in <module>
    from pyquery import PyQuery
ModuleNotFoundError: No module named 'pyquery'

daka_app 返回异常

app已经领取过钢镚,返回异常

2017-04-26 12:48:26,009 jobs[daka_app] ERROR: 返回数据结构可能有变化, 获取打卡数据失败: int() argument must be a string, a bytes-like object or a number, not 'NoneType'
Traceback (most recent call last):
  File "E:\JD-Coin-master\app\job\daka_app.py", line 28, in is_signed
    sign_days = int(util.find_value(days_pattern, r.text))
TypeError: int() argument must be a string, a bytes-like object or a number, not 'NoneType'
2017-04-26 12:48:26,009 jobs[daka_app] WARNING: dakaActType 参数未找到, 页面可能有变化, 打卡可能不成功.
2017-04-26 12:48:26,176 jobs[daka_app] INFO: 打卡成功: False; Message: 活动不存在或已下线!

添加奖励

京东客户端签到领京豆:
除了基础签到以外,还有个翻牌奖励0~10京豆

“京东客户端签到领京豆”失败了

试了好几次,都提示同样的错误:

2017-08-09 00:00:00,000 root[main] ERROR: # 任务运行出错: JSONDecodeError('Expecting value: line 1 column 1 (char 0)',)
Traceback (most recent call last):
  File "app/main.py", line 23, in main
    job.run()
  File "G:\git\JD-Coin\app\job\daka.py", line 41, in run
    self.job_success = self.sign()
  File "G:\git\JD-Coin\app\job\bean_app.py", line 50, in sign
    as_json = r.json()
  File "C:\Program Files\Python36\lib\site-packages\requests\models.py", line 892, in json
    return complexjson.loads(self.text, **kwargs)
  File "C:\Program Files\Python36\lib\json\__init__.py", line 354, in loads
    return _default_decoder.decode(s)
  File "C:\Program Files\Python36\lib\json\decoder.py", line 339, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "C:\Program Files\Python36\lib\json\decoder.py", line 357, in raw_decode
    raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.