• 3 爬虫cookie的处理办法


    cookie的应用和处理

    - cookie:服务器端记录客户端的相关状态
    - 处理cookie的方式:
        - 手动处理:不建议  页面找隐藏的标签,获取value
        - 自动处理会话对象Session,该对象可以像requests模块一样进行网络请求的发送(get,post)。session进行的请求发送可以自动携带和处理cookie

    cookie/session处理请求不是必须的 ,因为session是耗费资源的
    #基于cookie的案例分析:https://xueqiu.com/    案例使用自动处理cookie办法
    #1.从首页中获取详情页的url
        #发现:首页中的新闻数据是动态加载出来(ajax) json数据中taget对应的value值就是详情页的url
    import requests,json
    headers = {
        'User-Agent':'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.86 Safari/537.36'
    }
    # 第一次请求url 自动获取cookie
    session = requests.Session()
    session.get(url='https://xueqiu.com',headers=headers) # cookie就会自动存到session中
    # 捕获ajax数据包获取的url
    url = 'https://xueqiu.com/v4/statuses/public_timeline_by_category.json?since_id=-1&max_id=-1&count=10&category=-1'
    # 携带cookie进行的请求发送
    dic_json = session.get(url=url,headers=headers).json()
    #从响应数据中获取详情页的url
    for dic in dic_json['list']:
        info = json.loads(dic['data'])
        detail_url = 'https://xueqiu.com' + info['target']  # 详情页url
        title = info['title']
        print(detail_url,title)
  • 相关阅读:
    NC20282 棘手的操作(启发式合并)
    CF707D Persistent Bookcase(主席树+bitset)
    CF1473E Minimum Path(分层图+最短路)
    线段树优化建图2模板(暂无正确性保证)
    subprocess
    django中update_or_create()
    django中重复键值违反唯一键约束错误
    tox运行报C901错误解决办法
    gitlab搭建
    git命令
  • 原文地址:https://www.cnblogs.com/zhangchen-sx/p/10821536.html
Copyright © 2020-2023  润新知