从零开始学习Python爬虫:requests库教程 Python是一种高级编程语言,它可以完成很多复杂的任务,包括爬取网站。Python中的requests库是一个处理HTTP请求的库,它可以让爬虫程序很容易地获取数据。 1. 安装requests库 使用Python的pip工具来安装requests库,可以在命令行中输入以下命令: ``` pip install requests ``` 2. 发送HTTP请求 requests库中的get()方法可以发送一个HTTP GET请求,并返回响应对象。可以使用以下代码来发送GET请求: ``` import requests response = requests.get('https://www.example.com') print(response.status_code) # 打印网站的状态码 print(response.text) # 打印网站的HTML内容 ``` 3. 添加请求头 有些网站可能会检查请求来源并拒绝一些请求,因此需要在请求中添加headers头。可以使用以下代码来添加请求头: ``` import requests headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36' } response = requests.get('https://www.example.com', headers=headers) print(response.status_code) # 打印网站的状态码 print(response.text) # 打印网站的HTML内容 ``` 4. 发送POST请求 使用requests库也可以发送POST请求。可以使用以下代码来发送POST请求: ``` import requests data = {'key1': 'value1', 'key2': 'value2'} response = requests.post('http://www.example.com', data=data) print(response.status_code) # 打印网站的状态码 print(response.text) # 打印网站的HTML内容 ``` 5. 处理响应 在发送请求后,可以通过response对象来获取响应内容。响应对象包括以下属性: - status_code:表示HTTP状态码,比如200表示成功,404表示页面未找到等。 - headers:响应头信息。 - text:响应内容的字符串形式。 - content:响应内容的二进制形式。 - json():将响应内容解析为JSON格式。 除了以上属性,response对象还包括其他一些属性和方法,可以在Python官方文档中查看更多信息。 6. 处理异常 在爬虫程序中,可能会出现一些异常,比如网络异常、超时等。可以使用try-except语句来处理这些异常。可以使用以下代码来处理异常: ``` import requests try: response = requests.get('https://www.example.com') response.raise_for_status() # 如果状态码为404或500等,会触发HTTPError异常 except requests.exceptions.RequestException as e: print(e) # 打印异常信息 ``` 总结 本篇文章介绍了Python中的requests库,以及使用该库进行爬虫程序的开发。通过本文的学习,读者可以了解到requests库的一些基本用法,包括发送HTTP请求、添加请求头、发送POST请求、处理响应以及处理异常。在实际的爬虫开发中,读者可以根据需求选择合适的方法来实现所需功能。