• python 爬虫 加强记忆


    urllib :

    使用urllib.urlencode() 进行url编码, 在requests中自带有url编码 

    接受的参数是: 字典类型

    urllib2: 

    先构建请求: request = urllib2.Request()需要三个参数: url, data, headers

    再反送请求,返回响应: response = urllib2.urlopen(request)

     
    -------------------------------------------------------------------------------------------------------------
    # python3中多了一个request,response = urllib.request.urlopen()
     get请求方式没有data
    请求报头 headers = {"User-Agent" : "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_0) AppleWebKit/535.11 (KHTML, like Gecko) Chrome/17.0.963.56 Safari/535.11"}
     
    # 构建请求对象,这个请求附带请求报头
    request = urllib2.Request(url, headers = headers)
     
    # 发送并得到请求响应
    response = urllib2.urlopen(request)
     
    html = response.read()  # 读取响应内容
     
    有就修改没有就添加
    request. add_header('Connection', 'keep-alive')
    第一个参数是键名,第二参数是值
    获取指定的请求报头的值,首字母大写,后面全部小写
    request . get_header()
     
    获取url
    response.url
    获取响应码
    response.code
     
    import random
    random.choice(列表等可迭代对象)随机选择可迭代中的一个
     
    urlencode(url编码:只能使用ASCII编码,所以要用urlencode编码成url字符串,接收的参数是字典类型) 是urllib中独有的,这就是urllib和urllib2混用的原因
    url编码转化成字符串
    data = urllib.unquote("a=%E4%B8%AD%E5%9B%BD%E5%BC%BA")
    print data
    a = 中国强
  • 相关阅读:
    UCloud可用区的设计理念及功能图文详解
    Centos优化Hadoop
    Linux下使用fdisk扩展分区容量
    Linux内核之数据双链表
    安装 openSUSE Leap 42.1 之后要做的 8 件事
    Linux的防火墙–Iptables
    【转】c# thread.join 理解
    【转】Oracle 查询库中所有表名、字段名、表名说明、字段名说明
    【转】WinForms 使用Graphics绘制字体阴影
    WPF 如何加载图片
  • 原文地址:https://www.cnblogs.com/ppansj/p/8010756.html
Copyright © 2020-2023  润新知