首页 技术 正文
技术 2022年11月14日
0 收藏 797 点赞 4,193 浏览 1730 个字

get请求:

       用户输入搜索的内容,发送请求,将请求的内容保存起来。

       get请求的本质是在地址栏中输入参数进行的一种请求方式。

解析参数使用urllib.parse

import urllib.parse

# 在百度搜索“中国”关键字,得到的得到的url如下:
string= “https://www.baidu.com/s?ie=utf-8&word=%E4%B8%AD%E5%9B%BD&tn=98537121_hao_pg”

#unquote()反应用,解析参数,将二进制转成我们能看懂的中文形式

string = urllib.parse.unquote(string)

print(string)

# 显示结果:

https://www.baidu.com/s?ie=utf-8&word=中国&tn=98537121_hao_pg

第一种方式

country =input(“请输入要检索的信息”)
# 输入内容:王家兴

# 引用,即解析参数,将中文转换成为二进制形式
# 对指定的参数径解析
string = urllib.parse.quote(country)

# 将参数写成字典的格式
data = {
“ie”:”utf-8″,
“word”:”%s”%string
}

# 拼接路由

lt = []

for ie,word in data.items():

lt.append(ie+”=”+word)

# join()函数的作用是将将“&”作为分隔符对列表lt中的字符串进行拼接
var =”&”.join(lt)

string= “https://www.baidu.com/s?%s”%var
print(string)

# 显示结果:
# https://www.baidu.com/s?ie=utf-8&word=%E7%8E%8B%E5%AE%B6%E5%85%B4

第二种方式

# 将参数写成字典的格式
data = {
“ie”:”utf-8″,
“word”:”澳大利亚”
}
# urlencode()函数是专门对url进行操作的函数,并且把参数编码成为url类型的数据
urldata = urllib.parse.urlencode(data)

print(urldata)
# 显示结果:
# ie=utf-8&word=%E6%BE%B3%E5%A4%A7%E5%88%A9%E4%BA%9A

# 对url进行拼接
urlall= “https://www.baidu.com/s?%s”%urldata

# 显示结果:
print(urlall)
# https://www.baidu.com/s?ie=utf-8&word=%E6%BE%B3%E5%A4%A7%E5%88%A9%E4%BA%9A

ajax的GET请求

请求头信息(浏览器请求头信息)

  1. Request URL:https://movie.douban.com/top250?start=25&filter=
  2. Request Method:GET
  3. Status Code:200 OK
  4. Remote Address:154.8.131.165:443
  5. Referrer Policy:unsafe-url
爬虫代码如下:
import urllib.request
import urllib.parse
url = "https://movie.douban.com/top250?"
start = int(input("输入要查看到电影的页码:"))
data = {
"start": (start - 1) * 25,
"filter": "",
}
headers = {"User-Agent":"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36"}
data = urllib.parse.urlencode(data)
url+=data
print(url)
request =urllib.request.Request(url,headers = headers)
response = urllib.request.urlopen(request)
print(response.read().decode("utf8"))
上一篇: JS位运算和遍历
下一篇: Mysql操作方法类
相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:9,088
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,564
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,412
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,185
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,822
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,905