python爬虫实训日志_python爬虫学习日记(2)

这次记录一下GET和POST传参的姿势。

这次传参为了直观看出结果,本地打了一个flask框架的网站,这里简单介绍下flask框架,不想了解可以跳过这里,毕竟这里是记录爬虫学习。

flask框架所有的flask都有程序实例,修饰器路由,启动服务器。

from flask import Flask,request

app = Flask(__name__)    #程序实例

print(__name__)

@app.route('/')     #修饰器

def index():                #路由

name = request.args.get('name')  #这里是用GET方式传参name = xxx

return 'Hello,%s!' % name        #返回Hello,xxx!

if __name__=='__main__':   #启动服务器

app.run()

大体知道了flask框架,这里如果通过get传入name=xxx参数后即返回Hello,xxx!这里运行一下python爬虫实训日志_python爬虫学习日记(2)_第1张图片运行之后

GET方式传参

可以看到在本地http://127.0.0.1:5000/里运行。爬虫url就设置成这个,然后get方式传参即在url后面加个?即可实现url = "http://127.0.0.1:5000/"

res = requests.get(url+"?name=ico")    #requests.get

print(res.text)    #打印源码

这里传入name=ico508713626a958c435541c5d529fca2f3.png运行之后

可以看到传入成功。

POST方式传参

这里也需要把flask框架的路由改一下,改成接收post传参@app.route('/',methods=['GET','POST'])

def index():

name = request.form.get('name')    #这里用requests.form接收post,方式还是name=xxx

return "Hello,%s!" % name    #还是返回Hello,xxx!

post相比get就要麻烦很多要先设置个name

name = {"name":"ico"}

res = requests.post(url,data=name)    #利用requests.post传参

print(res.text)    #打印源码e9478020a940886fdc83b699664c9b58.png运行之后

和刚才一样。

这里我们玩一下,传入很多参数,毕竟跑脚本嘛

传大量参数

这里用到for循环,传入0-9。先试试post。for i in range(10):

name={"name":i}

res = requests.post(url,data=name)

print(res.content)python爬虫实训日志_python爬虫学习日记(2)_第2张图片运行之后

再试试getfor i in range(10):

res=requests.get(url+"?name="+i)

print(res.content)

一样的结果。

如果想传其他开始创个表,弄就完事了,例如classmates=['ico','Asuna','krrito']

for i in classmates:

data={"name":i}

res = requests.post(url,data=data)

print(res.content)5c4efb9d7c0dde1e30bdf60c02506a55.png运行之后

爬虫实在是太好玩了,下次记录下爬取网站特定东西,例如爬取b站动画区排行榜标题,不知道b站有没有反爬的东西,有的话我就没办法了,毕竟还是萌新。

大佬轻喷,如果有什么建议欢迎评论区提出

你可能感兴趣的:(python爬虫实训日志)