跳转至内容
0
  • 版块
  • 讨论
  • 最新
  • 标签
  • 热门
  • 顶端
  • 用户
  • 版块
  • 讨论
  • 最新
  • 标签
  • 热门
  • 顶端
  • 用户
皮肤
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • 默认(Zephyr)
  • 不使用皮肤
折叠
JIKE社区
2

2nature

@2nature
🍌
关于
帖子
60
主题
10
分享
0
群组
1
粉丝
2
关注
0

帖子

最新 最佳 有争议的

  • 【已出】2100m路由器原价199元,现128元不包邮。
    2 2nature

    @daleyjh 是的,忙乎了很长时间。终于抢到了。

    Jao易市场

  • 【已出】2100m路由器原价199元,现128元不包邮。
    2 2nature

    具体参数:

    商品名称:海康威视DS-3WR23-E
    商品毛重:1.015kg
    商品产地:中国大陆
    是否有USB接口:否
    LAN口数量:3
    天线数量:7根
    APP端控制:支持
    无线协议:无网口
    盲插:不支持
    固件切换:不支持
    防火墙:支持
    天线:外置
    LAN输出口:千兆网口
    WAN接入口:千兆网口
    适用面积:大户型(90-120㎡)
    无线速率:2100M

    商品情况

    Jao易市场

  • SOD发起200部影片免费看,让老司机们待在家防疫!
    2 2nature

    特殊时期,不要发这种降低免疫力的帖子。

    活动优惠

  • 京东PLUS会员免费领取QQ阅读会员一个月
    2 2nature

    抓紧去读书

    活动优惠 京东plus会员 qq阅读

  • win10专业版网页激活密钥
    2 2nature

    7NCKG-H9H49-BB29X-Q432Y-43K2P
    7NDYW-FFPW8-BQV9K-XQPPB-DPFJ2
    7NFWG-6CTP7-BCBJ2-MVTWJ-XW3PP
    7NHX6-4BCYH-DPQYC-PD2YH-PWGGC
    7NWJJ-F28XG-9VB84-MJVP6-3V7CP
    7PHMM-N2WF8-TMMGH-4K3WK-QV7CP
    7QCPN-TY4CK-WBHPK-MFF8R-8B6GC
    7QDNR-GTXT4-36MH6-QHBFY-DPFC2
    7QNFX-RPWKW-9DV48-KKXFX-QV66P
    7QXK6-4NWM9-Y8WHF-F8RRM-WHV82

    账号密钥

  • 免费领取顺丰速递代金券
    2 2nature

    正好明天要寄顺丰,先领了。谢大佬。

    活动优惠 顺丰优惠券 顺丰速递

  • 滴滴18元立减券
    2 2nature

    明天上午定表抢券

    活动优惠 滴滴出行 滴滴出行代金券

  • Office 365 A1P
    2 2nature

    向大佬学习

    活动优惠

  • 本站NodeBB版本升级到v1.13.2
    2 2nature

    吓得我看看

    公告

  • 日本知名网盘TeraCloud 六周年庆,10GB免费支持WebDAV
    2 2nature

    感谢楼主分享,顺便贴一下自己的邀请码
    LQJ75

    活动优惠

  • WIN10教育版RETAIL密钥一枚
    2 2nature

    3N3HD-Q64PP-MJ7R2-QPC28-DGPJB

    账号密钥 windows 10 windows10密钥 windows10教育版

  • Paypal 10 刀奖励,能不能领主要看脸
    2 2nature

    We're sorry, but you may not be eligible for this offer.

    活动优惠

  • 骚操作,刚才不小心删除了一波用户
    2 2nature

    李时珍的秀

    公告

  • office365 家庭板 拼车
    2 2nature

    @迷兔诶 教育邮箱注册的,不用花钱。美滋滋

    Jao易市场

  • 清华大学免费开放“文泉学堂”,高质量书籍免费看
    2 2nature
    '''
    python 3.6, 3.7
     
    pip install httpx loguru PyJWT
     
    # 文泉学堂
    # 3208943 ('Python+TensorFlow机器学习实战', '248') 第1页
    python fetch_png.py
     
    # 第10页
    python fetch_png.py 3208943 10
     
    '''
     
    # from typing import Union, Tuple
    from pathlib import Path
    from time import time
    import json
    import httpx
    import jwt
    from loguru import logger
     
    JWT_SECRET = 'g0NnWdSE8qEjdMD8a1aq12qEYphwErKctvfd3IktWHWiOBpVsgkecur38aBRPn2w'
    SESS = httpx.Client()
    URL = 'https://lib-nuanxin.wqxuetang.com'
    SESS.get(URL)
     
     
    # def gen_jwt_key(self):
    def gen_jwt_key(bookid):
        ''' jwt key for bookid '''
        # url = "https://lib-nuanxin.wqxuetang.com/v1/read/k?bid=%s" % bookid
        url = f'{URL}/v1/read/k?bid={bookid}'
        # r = self.session.get(url, timeout=5)
     
        # r = SESS.get(url, timeout=5)
        # j = json.loads(r.text)
     
        try:
            resp = SESS.get(url)
            resp.raise_for_status()
        except Exception as exc:
            logger.warning(exc)
            return str(exc)
     
        try:
            jdata = resp.json()
        except Exception as exc:
            logger.warning(exc)
            jdata = {}
     
        res = jdata.get('data')
        if res is None:
            raise Exception('returned None, something is not right...')
     
        return res
     
     
    # def gen_jwt_token(self, page):
    def gen_jwt_token(bookid, page=1):
        ''' gen jwt token '''
        cur_time = time()
        jwtkey = gen_jwt_key(bookid)
        jwttoken = jwt.encode({
            "p": page,
            "t": int(cur_time)*1000,
            "b": str(bookid),
            "w": 1000,
            # "k": json.dumps(self.jwtkey),
            "k": json.dumps(jwtkey),
            "iat": int(cur_time)
        }, JWT_SECRET, algorithm='HS256').decode('ascii')
        return jwttoken
     
     
    # def bookinfo(self):
    def bookinfo(bookid):
        ''' bookinfo '''
        # url = f"https://lib-nuanxin.wqxuetang.com/v1/read/initread?bid={self.bookid}"  # noqa
        url = f'{URL}/v1/read/initread?bid={bookid}'
        # r = self.session.get(url)
     
        req = httpx.models.Request('GET', URL)
        try:
            resp = SESS.get(url)
            resp.raise_for_status()
        except Exception as exc:
            logger.warning(exc)
            resp = httpx.Response(status_code=499, request=req, content=str(exc).encode())  # noqa
     
        try:
            jdata = resp.json()
        except Exception as exc:
            logger.warning(exc)
            jdata = {}
     
        # info = json.loads(r.text)
     
        # data = info['data']
        # return data['name'], data['canreadpages']
     
        data = jdata.get('data')
     
        if data is None:
            raise Exception('returned None, something is not right...')
     
        bookinfo.jdata = jdata
     
        return data.get('name'), data.get('canreadpages')
     
     
    # async def download_img(self, page, task_id):
    def fetch_png(bookid, page=1):
        ''' download booid page img '''
        token = gen_jwt_token(bookid, page)
        url = f'{URL}/page/img/{bookid}/{page}?k={token}'
        headers = {
            'referer': f'{URL}/read/pdf/{bookid}',
            'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36'  # noqa
        }
     
        req = httpx.models.Request('GET', URL)
     
        try:
            resp = SESS.get(url, headers=headers)
            resp.raise_for_status()
        except Exception as exc:
            logger.warning(exc)
            resp = httpx.Response(status_code=499, request=req, content=str(exc).encode())  # noqa
     
        fetch_png.resp = resp
     
        try:
            res = resp.content
        except Exception as exc:
            logger.warning(exc)
            return b''
     
        return res
     
     
    def main():
        ''' main '''
        import os
        import sys
     
        bookid = 3208943
        if not sys.argv[1:]:
            logger.info(' Provide at least a bookid.')
            logger.info(' Using %s to test ' % bookid)
        else:
            try:
                bookid = sys.argv[1]
            except Exception as exc:
                logger.warning(exc)
     
        page = 1
        if not sys.argv[2:]:
            logger.info(' Provide a page number.')
            logger.info(' Using %s to test ' % page)
        else:
            try:
                bookid = sys.argv[2]
            except Exception as exc:
                logger.warning(exc)
        logger.info(f' Fetchiing {bookid} {bookinfo(bookid)} page: {page}')
     
        res = fetch_png(bookid, page)
     
        filename = f'{bookid}-{page:03d}.png'
     
        count = 0
        while Path(filename).exists():
            count += 1
            filename = f'{bookid}-{page:03d}-{count}.png'
            if count > 4:
                break
        else:
            logger.warning(f' Possibly overwriting {filename}')
     
        Path(filename).write_bytes(res)
        logger.info(f'{filename} saved.')
     
        if sys.platform in ['win32']:
            os.startfile(f'{filename}')  # type: ignore
     
     
    if __name__ == '__main__':
        main()
    
    活动优惠

  • Beyond Compare 4.*激活密钥一组
    2 2nature

    提示该密钥已被吊销。

    活动优惠 激活密钥

  • 猫站 PT站 邀请发送
    2 2nature

    @jifeng 收到谢谢大佬

    活动优惠

  • 淘宝叠猫猫赚猫币自动脚本(无需安装任何软件)
    2 2nature

    这个方法是极好的。

    风声鹤唳 淘宝天猫
  • 1 / 1
  • 登录

  • 没有帐号? 注册

  • 登录或注册以进行搜索。
百度网盘
1,411 个主题
连续剧
745 个主题
国产剧
588 个主题
美剧
354 个主题
中国移动
307 个主题
动画片
257 个主题
中国电信
222 个主题
动作片
215 个主题

128

在线

40.6k

用户

40.3k

主题

110.8k

帖子
  • 第一个帖子
    最后一个帖子