从零到入职-番外篇-Python-网络爬虫2

request的其他信息

  1. 返回访问的url
    从零到入职-番外篇-Python-网络爬虫2_第1张图片
  2. request的头信息
    从零到入职-番外篇-Python-网络爬虫2_第2张图片
    读取单个信息
    从零到入职-番外篇-Python-网络爬虫2_第3张图片

伪造头信息。
这里先说明一下为什么要伪造头信息。
打开一个百度主页。
然后打开F12控制台
从零到入职-番外篇-Python-网络爬虫2_第4张图片
找到这里,然后下滑
从零到入职-番外篇-Python-网络爬虫2_第5张图片
User-Agent,就是访问时,用户的信息。
而我们使用爬虫进行爬取某个网站,显示出来的用户信息是这样的。
我们可以借助一个网站来看我们的访问用户信息,把网站放在这
httpbin.org
在这里插入图片描述

我们用爬虫访问网站就是返回这个结果,而一些网站就用这个来拒绝爬虫访问,所以我们要伪造头信息
从零到入职-番外篇-Python-网络爬虫2_第6张图片
从零到入职-番外篇-Python-网络爬虫2_第7张图片

如果我们百度一个爬虫关键字,这就是我们之前讲的网页请求的get请求,但是我们具体用控制台来看这个请求
从零到入职-番外篇-Python-网络爬虫2_第8张图片
就变成了这个。
我们写一个程序来实现一下用爬虫,百度爬虫。
从零到入职-番外篇-Python-网络爬虫2_第9张图片
看到下面的报错没,ascii大家都不陌生,这里的错误就跟上面两张图片一样,没有转码。
从零到入职-番外篇-Python-网络爬虫2_第10张图片
urllib里面提供的转码模块
从零到入职-番外篇-Python-网络爬虫2_第11张图片
另一种转码模块.

我们这里使用的urlopen都是get请求,下面是post请求

从零到入职-番外篇-Python-网络爬虫2_第12张图片
可以翻译一下这句话
简明扼要就是data=None,get请求,data!=None,post请求
从零到入职-番外篇-Python-网络爬虫2_第13张图片
我们还是用这个网站,
从零到入职-番外篇-Python-网络爬虫2_第14张图片
还是需要转码。

from urllib.request import urlopen
from urllib.parse import urlencode

data = {
     
    'name': 'tom',
    'age': 18
}

by = bytes(urlencode(data),encoding='utf-8')

url = 'http://httpbin.org/post'

response = urlopen(url, data=by)

print(response.read().decode())

从零到入职-番外篇-Python-网络爬虫2_第15张图片
就到这里吧

你可能感兴趣的:(从零到入职,python,爬虫)