yqchilde / JDMemberCloseAccount

学习python操作selenium的一个🌰 ,也是一种京东全自动退会方案
MIT License
1.24k stars 346 forks source link

会遇到个别手机号不对的卡住 #4

Closed 9527cfc closed 3 years ago

9527cfc commented 3 years ago

因为绑定的手机号不对,实际上那个手机号不对了,能不能加个数组,对比这类id,然后将他们剔除。

9527cfc commented 3 years ago

那个手机号不用了

9527cfc commented 3 years ago

在ret的json串里遍历该错误id数组,然后剔除,在赋值到card list

yqchilde commented 3 years ago

你意思是多个手机尾号校验?是这样吗

9527cfc commented 3 years ago

因为我那个手机号已经注销,无法接受短信,我的想法是我自己在命令行里直接找到无法执行的数据的id,然后我自己填写到某个数组变量中,然后对比请求到的数据,剔除错误数据。 手机号验证的话,我没有在请求到的数据中发现手机号吗的信息

9527cfc commented 3 years ago

或者可以一分钟之内没有收到验证码,就跳过该项,这样就是前端感知太明显

yqchilde commented 3 years ago

懂了,就是在出现号码不是指定号码时,把该店铺id或名字记一下,最后返回?

9527cfc commented 3 years ago

是的,这样自动程度更高了,但我没有发现返回数据里有手机号信息,是否会难判断。返回后加到数组,下次自动跳过。 还有某个店铺注销页面会加载不出来,不过这种情况会自动下一个好像。 我这两个情况是连在一起的,第一个店铺加载失败,第二个店铺手机号错误

yqchilde commented 3 years ago

ok,晚点处理一下,手机号不会返回,因为是页面的,但是我可以把出现错误的原因和店铺id记一下

9527cfc commented 3 years ago

直接加个时间判断,一分钟内没有提交验证码自动下一个,这样应该比较好写

9527cfc commented 3 years ago

是的,这样自动化程度比较高,谢谢

yqchilde commented 3 years ago

可以,晚点搞一下,要出去接人了

9527cfc commented 3 years ago

好的好的

9527cfc commented 3 years ago

目前在cardlist函数里加了两个cardlist. pop(0)暂时解决

9527cfc commented 3 years ago

我测试了一下,还是直接判断,卡住30秒或者多少时间直接跳过该账号,能够兼容各种问题,并方便迭代。

yqchilde commented 3 years ago

有空试一下最新的,设置了websocket超时时间设置和selenium超时时间设置,和记录错误的店铺信息

9527cfc commented 3 years ago

好的收到

9527cfc commented 3 years ago

试了一下,很完善了。 遇到utinl. py里面utf~ 8转码那句报错。是不是应该把转码放在main. py里。 我暂时注释掉了转码,然后跳过店铺采取id验证,记录店铺id,不记录店铺name。

yqchilde commented 3 years ago

昨天就是有个中文错误,加了utf8编码,你是什么情况下出现的编码问题

9527cfc commented 3 years ago

就是第一次跑起来的时候 Traceback (most recent call last): File "D:\JDMemberCloseAccount-main\main.py", line 243, in JDMemberCloseAccount().main() File "D:\JDMemberCloseAccount-main\main.py", line 38, in init self.config = get_config() File "D:\JDMemberCloseAccount-main\utils.py", line 20, in get_config return json.load(open(get_file("config.json"), 'r', encoding='utf-8')) File "C:\Users\9527\AppData\Local\Programs\Python\Python39\lib\json__init__.py", line 293, in load return loads(fp.read(), File "C:\Users\9527\AppData\Local\Programs\Python\Python39\lib\codecs.py", line 322, in decode (result, consumed) = self._buffer_decode(data, self.errors, final) UnicodeDecodeError: 'utf-8' codec can't decode byte 0xbf in position 525: invalid start byte

yqchilde commented 3 years ago

是不是本地改完config.json之后,保存时用了别的编码方式,可以试着把文件改成utf8编码方式

9527cfc commented 3 years ago

我测试了一下,是这个原因。因为里面没有汉字一开始,默认不是utf~ 8