python爬虫(一)—发起请求

python爬虫(一)——发起请求

一、准备工作

在准备发起请求的时候,我们需要用到requests库,事实上Urllib和aiohttp也是可以的,但是由于requests已经比较完善了,就不再介绍Urllib和aiohttp了
pip安装或者pycharm的settings下载都是可以的。

二、数据采集

使用首先我们要了解的是如何获取整个页面的东西,这是最基础的,然后我们才需要在整个页面中筛选出你所需要的信息。我们需要用到的就是requests里的get(),这是一个最简单的获取网页内容的方式,我们在必应图片上查“头像”得到的是下面的界面
在这里插入图片描述
你去查看网页源代码之后就会发现,它超级的复杂,没学过HTML看不懂怎么办,没关系,我也看不懂,但是咱们是有工具帮咱们的。
在这里插入图片描述
先介绍下get( )吧,在get()中,他的请求的参数是有很多的,一个必写的是url,翻译成中文就是网站的网址。还有headers,这个是常写的,但不是必写,它就相当于伪造了浏览器的头,然后网址自动响应返回给你内容,有些网址是需要这个的(大部分都需要)。还有paramsproxiesverifytimeoutcookies,这几个由于不常用,之后用到的时候再讲吧,或者可以自行百度搜索。
演示一下获取这个网页的信息:

import requests
reponses = requests.get('https://cn.bing.com/images/search?q=%E5%A4%B4%E5%83%8F&first=1&cw=1518&ch=722')
html = reponses.text
print(html)

这样我们就将这个页面的源代码就捕获到了
在这里插入图片描述
就是这个亚子
当然,我举的这个例子不太好,因为它不需要用到headers就全都返回给了你,我们来找一个需要用headers的网站
……………………………………
……………十分钟后……………
……………………………………
终于找到一个需要headers的了,那就是知乎,看来知乎还是比较严谨的,尝试一下

import requests
reponses = requests.get('https://www.zhihu.com/')
html = reponses.text
print(html)

它返回的是400
在这里插入图片描述
我们需要了解一下这时的错误码是什么原因,推荐一个网址

https://www.cnblogs.com/Aha-Sanding/p/5512787.html

里面有较全的错误码解释,400是我们不希望看到的,这时我们就需要将headers加上去,那么,headers从哪里找呢
打开知乎页面右键点击检查,会出现如下的一个页面
在这里插入图片描述
点进Network里然后再刷新页面,就会发现新增了很多东西,随机点开一个,然后找到user-agent,那就是请求头,将其保存为字典格式。
在这里插入图片描述

import requests
headers = {
    'user-agent':'Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Mobile Safari/537.36'
}
reponses = requests.get('https://www.zhihu.com/',headers = headers)
html = reponses.text
print(html)

这样的话返回的就不是400了
在这里插入图片描述
我们也可以查看现在的状态码是什么

>>>print(reponses.status_code)
200  

200代表的是请求成功

发起请求就这么多吧重点是在后面,之后咱往后延伸,案例的话下一次统一一下。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

UPC. 故里

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值