美文网首页
爬虫学习(3)—初学者常用的小技巧

爬虫学习(3)—初学者常用的小技巧

作者: 罗汉堂主 | 来源:发表于2019-12-30 17:11 被阅读0次

    寻找登录的post地址

    • 在form表单中寻找action对应的url地址(html页面)

      • post的数据是input标签中name的值作为键,真正的用户名密码作为值的字典,post的url地址就是action对应的url地址
    • 抓包(NetWork)

      • 勾选perserve log按钮,防止页面跳转找不到url
      • 寻找post数据,确定参数
        • 参数不会变,直接用,比如密码不是动态加密的时候
        • 参数会变
          • 参数在当前的响应中
          • 通过js生成

    定位想要的js

    • 选择会触发js事件的按钮,点击event listener,找到js的位置
    • 通过chrome中的search all file来搜索url中的关键字
    • 通过添加断点的方式来查看js的操作,通过python来进行同样的操作

    获取cookie

    import requests
    
    # 将cookie-jar转为字典
    response = requests.get('http://www.baidu.com') 
    print(requests.utils.dict_from_cookiejar(response.cookies))
    
    # 将字典转为cookie-jar
    print(requests.utils.cookiejar_from_dict({'a': '1'})
    

    url地址的编、解码

    # url解码
    url = "https%3a%2f%2ftieba.baidu.com%2ff%3fkw%3d%e6%9d%8e%e6%af%85"
    requests.utils.unquote(url)
    
    # url编码
    url = "https://tieba.baidu.com/f?kw=李毅"
    requests.utils.quote(url)
    

    忽视证书验证

    import requests
    
    # 忽视证书错误,一般是在请求https时候,加个参数就可以
    requests.get('https://www.12306.cn/mormhweb/', verify=False)
    

    设置超时

    import requests
    
    # 设置超时10s,如果10s内请求不成功则报错
    requests.get(url, timeout=10)
    

    配合状态码判断是否请求成功

    import requests
    
    response = requests.get(url)
    assert response.status_code == 200
    

    相关文章

      网友评论

          本文标题:爬虫学习(3)—初学者常用的小技巧

          本文链接:https://www.haomeiwen.com/subject/dycmmctx.html