mirror of
https://github.com/Sitoi/dailycheckin.git
synced 2024-11-17 13:48:03 +08:00
🔨 修复 【百度贴吧】数量太多签到失败的问题
This commit is contained in:
parent
5757dc946c
commit
25dfd9bb3a
1
.gitignore
vendored
1
.gitignore
vendored
@ -130,5 +130,4 @@ dmypy.json
|
|||||||
# Pyre type checker
|
# Pyre type checker
|
||||||
.pyre/
|
.pyre/
|
||||||
.idea
|
.idea
|
||||||
jingdong
|
|
||||||
config.json
|
config.json
|
1
LICENSE
1
LICENSE
@ -19,3 +19,4 @@ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|||||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||||
SOFTWARE.
|
SOFTWARE.
|
||||||
|
|
||||||
|
@ -21,9 +21,9 @@ prevent repetitions, or other common security improvements. Use with care.
|
|||||||
|
|
||||||
"""
|
"""
|
||||||
|
|
||||||
from rsa.key import newkeys, PrivateKey, PublicKey
|
from rsa.key import PrivateKey, PublicKey, newkeys
|
||||||
from rsa.pkcs1 import encrypt, decrypt, sign, verify, DecryptionError, \
|
from rsa.pkcs1 import DecryptionError, VerificationError, compute_hash, decrypt, encrypt, find_signature_hash, sign, \
|
||||||
VerificationError, find_signature_hash, sign_hash, compute_hash
|
sign_hash, verify
|
||||||
|
|
||||||
__author__ = "Sybren Stuvel, Barry Mead and Yesudeep Mangalapilly"
|
__author__ = "Sybren Stuvel, Barry Mead and Yesudeep Mangalapilly"
|
||||||
__date__ = '2020-06-12'
|
__date__ = '2020-06-12'
|
||||||
@ -36,5 +36,5 @@ if __name__ == "__main__":
|
|||||||
doctest.testmod()
|
doctest.testmod()
|
||||||
|
|
||||||
__all__ = ["newkeys", "encrypt", "decrypt", "sign", "verify", 'PublicKey',
|
__all__ = ["newkeys", "encrypt", "decrypt", "sign", "verify", 'PublicKey',
|
||||||
'PrivateKey', 'DecryptionError', 'VerificationError',
|
'PrivateKey', 'DecryptionError', 'VerificationError',
|
||||||
'find_signature_hash', 'compute_hash', 'sign_hash']
|
'find_signature_hash', 'compute_hash', 'sign_hash']
|
||||||
|
@ -28,14 +28,6 @@ class TiebaCheckIn:
|
|||||||
user_name = self.login_info(session=session)["userName"]
|
user_name = self.login_info(session=session)["userName"]
|
||||||
return tbs, user_name
|
return tbs, user_name
|
||||||
|
|
||||||
@staticmethod
|
|
||||||
def tieba_list(session):
|
|
||||||
data = session.get(url="https://tieba.baidu.com/mo/q/newmoindex").json()
|
|
||||||
if data["no"] == 0:
|
|
||||||
return [x["forum_name"] for x in data["data"]["like_forum"]]
|
|
||||||
else:
|
|
||||||
return []
|
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def tieba_list_more(session):
|
def tieba_list_more(session):
|
||||||
content = session.get(url="http://tieba.baidu.com/f/like/mylike?&pn=1", timeout=(5, 20))
|
content = session.get(url="http://tieba.baidu.com/f/like/mylike?&pn=1", timeout=(5, 20))
|
||||||
@ -50,18 +42,12 @@ class TiebaCheckIn:
|
|||||||
content = session.get(url=f"http://tieba.baidu.com/f/like/mylike?&pn={next_page}", timeout=(5, 20))
|
content = session.get(url=f"http://tieba.baidu.com/f/like/mylike?&pn={next_page}", timeout=(5, 20))
|
||||||
|
|
||||||
def get_tieba_list(self, session):
|
def get_tieba_list(self, session):
|
||||||
try:
|
tieba_list = list(self.tieba_list_more(session=session))
|
||||||
session.get(url="https://tieba.baidu.com/f/user/json_userinfo", allow_redirects=False).json()
|
|
||||||
except Exception as e:
|
|
||||||
print(e)
|
|
||||||
tieba_list = self.tieba_list(session=session)
|
|
||||||
else:
|
|
||||||
tieba_list = self.tieba_list_more(session=session)
|
|
||||||
return tieba_list
|
return tieba_list
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def sign(session, tb_name_list, tbs):
|
def sign(session, tb_name_list, tbs):
|
||||||
success_count, error_count, exist_count = 0, 0, 0
|
success_count, error_count, exist_count, shield_count = 0, 0, 0, 0
|
||||||
for tb_name in tb_name_list:
|
for tb_name in tb_name_list:
|
||||||
md5 = hashlib.md5(f"kw={tb_name}tbs={tbs}tiebaclient!!!".encode("utf-8")).hexdigest()
|
md5 = hashlib.md5(f"kw={tb_name}tbs={tbs}tiebaclient!!!".encode("utf-8")).hexdigest()
|
||||||
data = {"kw": tb_name, "tbs": tbs, "sign": md5}
|
data = {"kw": tb_name, "tbs": tbs, "sign": md5}
|
||||||
@ -71,11 +57,13 @@ class TiebaCheckIn:
|
|||||||
success_count += 1
|
success_count += 1
|
||||||
elif response["error_code"] == "160002":
|
elif response["error_code"] == "160002":
|
||||||
exist_count += 1
|
exist_count += 1
|
||||||
|
elif response["error_code"] == "340006":
|
||||||
|
shield_count += 1
|
||||||
else:
|
else:
|
||||||
error_count += 1
|
error_count += 1
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
print(f"贴吧 {tb_name} 签到异常,原因{str(e)}")
|
print(f"贴吧 {tb_name} 签到异常,原因{str(e)}")
|
||||||
msg = f"贴吧总数: {len(tb_name_list)}\n签到成功: {success_count}\n已经签到: {exist_count}\n签到失败: {error_count}"
|
msg = f"贴吧总数: {len(tb_name_list)}\n签到成功: {success_count}\n已经签到: {exist_count}\n被屏蔽的: {shield_count}\n签到失败: {error_count}"
|
||||||
return msg
|
return msg
|
||||||
|
|
||||||
def main(self):
|
def main(self):
|
||||||
|
Loading…
Reference in New Issue
Block a user