服务器渲染:服务器直接把网页和数据整合在一起,返回给网页(在页面源代码中可以看到数据)。
get类型:
(仅供模板参考)
import requests
url='http://www.sougou.com/web?query=周杰伦'
headers={
"User-Agent":" Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.71 Safari/537.36 Edg/97.0.1072.55"
}
resp=requests.get(url,headers=headers)
print(resp.text)#拿到页面源代码
post类型:
下面展示一些 内联代码片
。
import requests
url="http://fanyi.baidu.com/sug"
word=input("请输入你要翻译的英文单词")
dat={
"kw":word
}
resp=requests.post(url,data=dat)#发送post请求
print(resp.json())#字符串输出json格式
客户端渲染:第一次请求只拿到一个网页骨架,第二次请求拿到数据(在页面源代码中看不到数据)。
需要在network中找到所需求数据,然后对该也数据进行爬取数据
#豆瓣数据爬取
import requests
headers={
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36"
}
url="https://movie.douban.com/j/chart/top_list?"
param={
"type": 24,
"interval_id": "100:90",
"action":"",
"start": 0,
"limit": 20
}#参数,与url ?后面的参数作用相同
#url=https://movie.douban.com/j/chart/top_list?type=24&interval_id=100:90&action=&start=0&limit=20
result=requests.get(url=url,params=param,headers=headers)
print(result.json())
result.close()