Python爬虫入门(二)之Requests库

我是照着小白教程做的,所以该篇是更小白教程hhhhhhhh

一、Requests库的简介

Requests 唯一的一个非转基因的 Python HTTP 库,人类可以安全享用。(摘自Requests库官方文档

二、Requests的功能特性

Requests 完全满足今日 web 的需求。

  • Keep-Alive & 连接池
  • 国际化域名和 URL
  • 带持久 Cookie 的会话
  • 浏览器式的 SSL 认证
  • 自动内容解码
  • 基本/摘要式的身份认证
  • 优雅的 key/value Cookie
  • 自动解压
  • Unicode 响应体
  • HTTP(S) 代理支持
  • 文件分块上传
  • 流下载
  • 连接超时
  • 分块请求
  • 支持 .netrc

Requests 支持 Python 2.6—2.7以及3.3—3.7,而且能在 PyPy 下完美运行。

三、运行环境

  • Windows版本

    我的电脑用的是Win7系统,因为从上大学开始,很多软件装上使用不了,比如VC++6.0等等,当时是说Win10还有很多软件不兼容(PS:16年的Win10还不大成熟...),后来就一直用的Win7,当然前不久微软也发官方通告了,Win7被淘汰了,不过没关系,Win7和Win10在大多数情况下,是类似的,这个爬虫系列我就以Win7为例。
  • Python版本

    看了很多教程,我下了anaconda,它是一个开源的Python发行版本,其包含了conda、Python等180多个科学包及其依赖项(PS:应该蛮好用,要不然也不会那么多人用它hhh)。这次我下的是3.8版本的,传送门Anaconda官网
  • 集成开发环境(IDE)

    我用的是PyCharm,这个比较经典还好用,是由JetBrains打造的一款Python IDE,传送门JetBrains官网

四、软件安装

  • 安装Python

    进入Anaconda官网点击下载安装包



    开始安装界面



    自定义安装目录,它弹了个警告,就是因为我存放的文件夹名是program Files,中间有空格,建议大家取名用连字符命名,要不然以后装Conda packages会出问题



    安装完成
  • 安装IDE



    进入JetBrains官网点击下载安装包



    开始安装界面

  1. 第一个复选框是让你选择64位系统,你可以根据计算机系统确定是否勾选
  2. 第二个复选框是将打开的文件夹做为项目添加进去
  3. 第三个复选框是关联py类型的文件,默认此类型文件用PyCharm打开
  4. 第四个复选框是将启动器dir添加到路径里

五、安装Request库



点击开始菜单,找到Anaconda的安装目录,以管理员身份运行Anaconda Prompt

// 键入命令
conda install requests



键入上面的命令,开始安装Request库



安装完毕,传送门Requests库官方文档,其中有很多本文没提到的库操作方法。

在安装此库,我遇到了一些问题,就是我看的教程里,博主是直接用的cmd,我也用管理员身份运行,我怀疑是因为安装目录和操作目录不是一个,所以键入命令,不能识别我的字。使用了Anaconda来安装该库,可能对于我来说简单一丢丢hhhhhhh

六、初试PyCharm



打开PyCharm,新建项目,建议放在自己命名测试的文件夹里



在文件夹里新建Python文件

输入下方代码导入Request库

import requests #导入Request库

继续输入获取我们想要的网页

r = requests.get('https://unsplash.com') #像目标url地址发送get请求,返回一个response对象
print(r.text) #r.text是http response的网页HTML



点击运行该代码



页面下方得到运行结果



以上用了get请求,我们可以继续输入下方代码查看类型

向网站发送了一个get请求,然后网站会返回一个response,r 就是response

print(type(r))



可以看到输出结果如下



建议大家多看看Requests库官方文档

没有别的指南了,你现在要靠自己了

祝你好运

Python爬虫入门(二)之Requests库的更多相关文章

  1. python爬虫入门三:requests库

    urllib库在很多时候都比较繁琐,比如处理Cookies.因此,我们选择学习另一个更为简单易用的HTTP库:Requests. requests官方文档 1. 什么是Requests Request ...

  2. Python爬虫利器一之Requests库的用法

    前言 之前我们用了 urllib 库,这个作为入门的工具还是不错的,对了解一些爬虫的基本理念,掌握爬虫爬取的流程有所帮助.入门之后,我们就需要学习一些更加高级的内容和工具来方便我们的爬取.那么这一节来 ...

  3. (转)Python爬虫利器一之Requests库的用法

    官方文档 以下内容大多来自于官方文档,本文进行了一些修改和总结.要了解更多可以参考 官方文档 安装 利用 pip 安装 $ pip install requests 或者利用 easy_install ...

  4. 2.Python爬虫入门二之爬虫基础了解

    1.什么是爬虫 爬虫,即网络爬虫,大家可以理解为在网络上爬行的一直蜘蛛,互联网就比作一张大网,而爬虫便是在这张网上爬来爬去的蜘蛛咯,如果它遇到资源,那么它就会抓取下来.想抓取什么?这个由你来控制它咯. ...

  5. Python爬虫入门四之Urllib库的高级用法

    1.设置Headers 有些网站不会同意程序直接用上面的方式进行访问,如果识别有问题,那么站点根本不会响应,所以为了完全模拟浏览器的工作,我们需要设置一些Headers 的属性. 首先,打开我们的浏览 ...

  6. Python爬虫入门二之爬虫基础了解

    1.什么是爬虫 爬虫,即网络爬虫,大家可以理解为在网络上爬行的一直蜘蛛,互联网就比作一张大网,而爬虫便是在这张网上爬来爬去的蜘蛛咯,如果它遇到资源,那么它就会抓取下来.想抓取什么?这个由你来控制它咯. ...

  7. 转 Python爬虫入门四之Urllib库的高级用法

    静觅 » Python爬虫入门四之Urllib库的高级用法 1.设置Headers 有些网站不会同意程序直接用上面的方式进行访问,如果识别有问题,那么站点根本不会响应,所以为了完全模拟浏览器的工作,我 ...

  8. 转 Python爬虫入门三之Urllib库的基本使用

    静觅 » Python爬虫入门三之Urllib库的基本使用 1.分分钟扒一个网页下来 怎样扒网页呢?其实就是根据URL来获取它的网页信息,虽然我们在浏览器中看到的是一幅幅优美的画面,但是其实是由浏览器 ...

  9. 转 Python爬虫入门二之爬虫基础了解

    静觅 » Python爬虫入门二之爬虫基础了解 2.浏览网页的过程 在用户浏览网页的过程中,我们可能会看到许多好看的图片,比如 http://image.baidu.com/ ,我们会看到几张的图片以 ...

  10. Python 爬虫入门(二)——爬取妹子图

    Python 爬虫入门 听说你写代码没动力?本文就给你动力,爬取妹子图.如果这也没动力那就没救了. GitHub 地址: https://github.com/injetlee/Python/blob ...

随机推荐

  1. SP22343 Norma--序列分治

    Norma 传送门 题意简化: 定义一个区间的贡献为 \(max*min*len\),求给定序列中所有子区间的总贡献和 题解 考虑 \(O(n*log_2n)\) 的复杂度的做法 数据结构??? yz ...

  2. SpringBoot第五集:整合监听器/过滤器和拦截器(2020最新最易懂)

    SpringBoot第五集:整合监听器/过滤器和拦截器(2020最新最易懂) 在实际开发过程中,经常会碰见一些比如系统启动初始化信息.统计在线人数.在线用户数.过滤敏/高词汇.访问权限控制(URL级别 ...

  3. python机器学习识别手写数字

    手写数字识别 关注公众号"轻松学编程"了解更多. 导包 import numpy as np import matplotlib.pyplot as plt %matplotlib ...

  4. 洛谷 P2391 白雪皑皑 线段树+优化

    题目描述: 现在有 \(N\) 片雪花排成一列. Pty 要对雪花进行$ M $次染色操作,第 \(i\)次染色操作中,把\((i*p+q)%N+1\) 片雪花和第\((i*q+p)%N+1\)片雪花 ...

  5. 汉诺塔问题实验--一个简洁的JAVA程序

    思路: 这里使用递归法 n==1的时候,直接把它从x移到z位置即可. 如果是n层,我们首先把上面的n- 1层移到y位置,然后把最 下面的那个最大的盘子,移到z位置,然后把y上面放的上面n-1层移到z位 ...

  6. 用DOM和DOM4J写xml文件时,怎样设置xml文档的编码

    //在将xml文档传输出去时,利用Transformer中的setOutputProperty方法 TransformerFactory trans = TransformerFactory.newI ...

  7. 1.流程控制--if

    流程控制--if -*- coding:utf-8 -*- #定义字符编码 1.判断条件if age = input("输入年龄:") #将交互式输入内容赋值给age,默认内容为字 ...

  8. Java多线程技术:实现多用户服务端Socket通信

    目录 前言回顾 一.多用户服务器 二.使用线程池实现服务端多线程 1.单线程版本 2.多线程版本 三.多用户与服务端通信演示 四.多用户服务器完整代码 最后 前言回顾 在上一篇<Java多线程实 ...

  9. [Docker镜像] 关于阿里云容器镜像服务的使用(以天池比赛提交镜像为例)

    最近在参加天池比赛,由于比赛需要使用阿里云容器镜像服务完成线上预测任务,所以花费了3-4天的时间了解并使用Docker完成相关镜像操作,在此分享下我学习的内容,以下是本文的目录结构: 介绍 镜像 容器 ...

  10. 处理request信息的ngx_http_process_request

    在处理完http的头部信息后  然后在 处理request-body信息ngx_http_process_request-------- -----------ngx_http_process_req ...