zoukankan      html  css  js  c++  java
  • https://scrapingclub.com/exercise/detail_sign/

        def parse(self, response):
            # pattern1 = re.compile('token=(.*?);')
            # token = pattern1.findall(response.headers.getlist("set-cookie")[1].decode("utf-8"))[0]
    
            pattern2 = re.compile('token=(.*?);')
            token = pattern2.findall(response.headers.getlist("set-cookie")[1].decode("utf-8"))[0]
            token_md5= token.encode("utf-8")
            sign= hashlib.md5(token_md5).hexdigest()
            cookie = {
                'token': token,
            }
            url='https://scrapingclub.com/exercise/ajaxdetail_sign/?sign='+sign
            yield scrapy.Request(url= url,cookies=cookie,headers=header,callback=self.parse_json)

    关键在于把token转成MD5

    def get_md(url):
        m = hashlib.md5()
        m.update(url)
        return m.hexdigest()
    copy from: https://www.jianshu.com/p/271b20f7574f

    用到了其中的两句,不知道为什么要update,其中就像原作者说的,不能直接hashlib.md5(str)必须是byte,需要转码一次

    -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- focus on what you want to be
  • 相关阅读:
    VIPServer VS LVS
    阿里中间件
    每天进步一点点——Linux
    在线制图工具!!!
    test
    RHCE 基础学习
    TCP/IP源码(59)——TCP中的三个接收队列
    多队列网卡简介以及Linux通过网卡发送数据包源码解读
    Queueing in the Linux Network Stack !!!!!!!!!!!!!!!
    css选择器
  • 原文地址:https://www.cnblogs.com/bamboozone/p/10460265.html
Copyright © 2011-2022 走看看