爬虫从入门到入预(3)

今天主要学习的是requests这个包,现在还没有认识到这个包有多牛逼,反正老师说强就是强。第一部分使用pip安装requests,学习了一个简单的反爬机制,UA处理,从开发者选项中抄一下浏览器的UA设置,保存成字典,通过headers参数传递进入requests.get中,最后打印一下resp.text.

#这里要求安装requests包,推荐使用清华源:
#pip install -i https://pypi.tuna.tsinghua.edu.cn/simple some-package(这里换成你想要安装的包)


import requests

query=input("输入一个你喜欢的明星:")
#f{}里面的f代表一个占位符,表示在{}里面放置的是字符串
url=f“你的url”

headers={
    "User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.102 Safari/537.36 Edg/98.0.1108.62"
}
resp=requests.get(url,headers=headers)#增加headers,简单处理了一个反爬机制

print(resp)
print(resp.text)

第二部分:主要学习的是post请求下的爬取处理

这里需要我们在EDGE或者chrome浏览器中去到payload(载荷)查看关键字

最后就是打印的时候使用json()格式,方便我们查看打印结果

import requests

url="翻译网址url"

str=input("请输入你想要翻译的单词或句子:")

#在post请求里面,需要到payload里面查看关键词keyword
#而在get请求中,在payload里面查看query string parameters
data={
    "kw":str
}

#发送post请求,发送的数据必须放在字典中,然后用data参数进行传递

resp=requests.post(url,data=data)
print(resp.json())#将服务器返回的内容直接处理成json格式--字典形式

第三部分:主要是学习传参,之前学习过在UA设置里面使用headers进行传参。当我们的url参数过长时,可以把?后面的内容写进data,进行传参。在get请求中去到payload复制相关参数。然后也是简单加上一个UA处理

import requests

url="某个电影排行榜url"

#url数据过长,重新封装参数
params={
    "type": "24",
    "interval_id": "100:90",
    "action":"",
    "start": "0",
    "limit": "70"
}

headers={
    "User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.102 Safari/537.36 Edg/98.0.1108.62"
}

#在post请求中,使用的是data参数,而get请求中使用的是params参数
resp=requests.get(url,params=params,headers=headers)

print(resp.request.url)
print(resp.json())
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值