2023-02-03 16:47

python真的是很好的语言,首先python为我们封装了很多简单又实用的爬虫库。所以今天博主就带领大家认真的学习下python中被广泛实用的爬虫库——requests库。专为python而建,python有史以来被下载的最多的库之一。requests是一个很实用的Python HTTP客户端库,爬虫和测试服务器响应数据时经常会用到,requests是Python语言的第三方的库,专门用于发送HTTP请求,使用起来比urllib简洁很多。

基本使用方式:1、requests.get()

用于请求目标网站,类型是一个HTTPresponse类型。如各种类型的请求方式

import requests
 
requests.get('http://httpbin.org/get')
requests.post('http://httpbin.org/post')
requests.put('http://httpbin.org/put')
requests.delete('http://httpbin.org/delete')
requests.head('http://httpbin.org/get')
requests.options('http://httpbin.org/get')

2、使用代理

同添加headers方法,代理参数也要是一个dict这里使用requests库爬取了IP代理网站的IP与端口和类型

#! -*- encoding:utf-8 -*-

    import requests
    import random

    # 要访问的目标页面
    targetUrl = "http://httpbin.org/ip"

    # 要访问的目标HTTPS页面
    # targetUrl = "https://httpbin.org/ip"

    # 代理服务器(产品官网 www.16yun.cn)
    proxyHost = "t.16yun.cn"
    proxyPort = "31111"

    # 代理验证信息
    proxyUser = "username"
    proxyPass = "password"

    proxyMeta = "http://%(user)s:%(pass)s@%(host)s:%(port)s" % {
        "host" : proxyHost,
        "port" : proxyPort,
        "user" : proxyUser,
        "pass" : proxyPass,
    }

    # 设置 http和https访问都是用HTTP代理
    proxies = {
        "http"  : proxyMeta,
        "https" : proxyMeta,
    }


    #  设置IP切换头
    tunnel = random.randint(1,10000)
    headers = {"Proxy-Tunnel": str(tunnel)}



    resp = requests.get(targetUrl, proxies=proxies, headers=headers)

    print resp.status_code
    print resp.text

虽然这些库都很实用也简单,但是学爬虫我们还是要从底层慢慢的学起,万丈高楼平地起,它也是需要地基稳定的。


评论