爬虫入门(二)
2021/6/16 18:25:56
本文主要是介绍爬虫入门(二),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
fiddler一个网页的呈现,中间不知一次http请求,平均一个网页差不多10-15个http请求
谷歌:
右键开发者工具,network
点击请求,右边栏请求详细信息
右边栏:request,headers response query stirng get 参数 form data: post参数
fiddler:
配置:
抓包
<> :html内容
{json}:json数据,很可能就是个接口
{css}:css文件
{js}:js文件
右上:http请求信息:
raw: 请求头部的详细信息
webforms:请求所带参数,query_string formdata
右下:http响应信息
左下黑色框,输入指令:
clear:清除所有请求
select json:快速选择所有json请求
select image 图片请求
select html html请求
?内容:搜索包含这个内容的所有请求
模拟浏览器发送请求的库,python自带 python:urllib,urllib2 python urllib.request urllib.parse
重点掌握request
字符串二进制字符串之间的转化
encode() 字符串》二进制
如果小括号里面不写参数,默认utf-8
如果写,就可以使gbk
decode() 二进制==》字符串
如果小括号里面不写参数,默认utf-8
如果写,就可以使gbk
urllib.request
urlopen(url)
urlretrieve(url,“名字”)
urllib.parse
quote:url编码函数,将中文进行转化为%xxx
unquote:url解码函数,将%xxx转化为指定字符
(这两个就是方法就是把一些特殊的¥ 空格,中文惊醒编码或者解码操作)
import urllib.parse url_image="https://i02piccdn.sogoucdn.com/ebae78799b6a852a" url="https://www.sogou.com/sogou?query=%91%A8%E6%9D%B0%E4%BC%A6&pid=sogou-site-40f4da34bbe18021" #url只能有特定的字符组成,字母,数字,下划线 #如果出现其他的,比如¥ 空格,中文等,就要对其进行编码 url1='http://baidu.com/html?name="狗蛋"&pwd=123456' ret=urllib.parse.quote(url1) print(ret) re=urllib.parse.unquote(ret) print(re)
urlencode:给一个字典,将字典拼接为query_string并且实现了编码的功能
u="http://www.baidu.com/index.html" #假如参数有 name age sex height #http://www.baidu.com/index.html?name=18&sex=nv&height=180 name='狗蛋' age=18 sex='nv' height='180' date={ 'name':name, 'age':age, 'height':height, } #遍历字典 '''li=[] for k,v in date.items(): li.append(k+'='+str(v)) query_string='&'.join(li) url=url+'?'+query_string print(url) 等价于下面的方法''' query_string=urllib.parse.urlencode(date)#不近可以拼接字符,并且可以转码 print(query_string)
response
read(): 获取相应内容,内容是字节类型
geturl() 获取请求的url
getheaders() 获取头部信息,列表里面有元祖
getcode() 获取状态码
readlines() 按行读取,返回列表,都是字节类型
代码演示:
import urllib.request url='https://www.baidu.com/'#完整的url,http://www.baidu.com:80/index.html?name=goudan&password=123#lala response=urllib.request.urlopen(url=url) print(response) print(response.read().decode())
这篇关于爬虫入门(二)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-10-01基于Python+Vue开发的医院门诊预约挂号系统
- 2024-10-01基于Python+Vue开发的旅游景区管理系统
- 2024-10-01RestfulAPI入门指南:打造简单易懂的API接口
- 2024-10-01初学者指南:了解和使用Server Action
- 2024-10-01Server Component入门指南:搭建与配置详解
- 2024-10-01React 中使用 useRequest 实现数据请求
- 2024-10-01使用 golang 将ETH账户的资产平均分散到其他账户
- 2024-10-01JWT用户校验课程:从入门到实践
- 2024-10-01Server Component课程入门指南
- 2024-09-30Dnd-Kit学习:新手快速入门指南