golang爬虫colly 发送post请求
作者:liuyuncd 发布时间:2024-02-05 09:35:03
标签:golang,colly,post请求
继续还是工作中使用colly,不管是官网,还是网上的一些文章(其实90%就是把官网的案例抄过去),都是一样的格式,没有讲到post,测试了几次,记录一下post的使用
c := colly.NewCollector()
type data struct {
Phone string `json:"phone" binding:"required"`
}
d:=&data{
Phone:"18190897361",
}
da,err:=json.Marshal(d)
if err!=nil{
fmt.Println(err)
}
c.OnResponse(func(response *colly.Response) {
fmt.Println(string(response.Body))
})
c.OnRequest(func(r *colly.Request) {
fmt.Println(r)
fmt.Println(r.Method)
r.Headers.Set("Content-Type", "application/json;charset=UTF-8")
r.Headers.Set("User-Agent","Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.113 Safari/537.36")
})
c.OnError(func(response *colly.Response, e error) {
fmt.Println(e)
})
c.PostRaw("http://www.××××.com:×××/baseDevice/getUserInfo",da)
//c.Visit("http://www.××××.com:×××/baseDevice/getUserInfo")
其实也没多少不一样,首先准备你要发送的json格式的数据(现在90%都是json格式请求了),
type data struct {
Phone string `json:"phone" binding:"required"`
}
d:=&data{
Phone:"18190897361",
}
da,err:=json.Marshal(d)
这里只发送一个电话号码,第二部就是最后的发送了
c.PostRaw("http://www.××××.com:×××/baseDevice/getUserInfo",da)
1:这句话一定要写到最后
c.Visit(“http://www.××××.com:×××/baseDevice/getUserInfo”)
Visit方法,点进去源码可以看到默认走的是get模式,我们这里发送post,就不需要写了
就这么简单—结束
来源:https://blog.csdn.net/liuyuncd/article/details/106900453


猜你喜欢
- 在开发WEB应用程序中,我们经常需要对文件系统中的驱动器、文件夹和文件进行处理,比如收集驱动器的相关信息;创建、添加、移动或删除文件夹和文件
- 1、查看是否启用了日志:show variables like 'log_bin';2、查看当前日志文件名:show mas
- FROM publish WHERE (id NOT IN (SELECT&
- jsonp方式一:指定返回方法# 后端def view(request): callback = request.GET.get
- 本篇概要1.线程与多线程2.进程与多进程3.多线程并发下载图片4.多进程并发提高数字运算关于并发在计算机编程领域,并发编程是一个很常见的名词
- 代码是在源代码的基础上进行的修改。希望对你有所帮助! 实现后如图所示:首先我们需要抓取一些基础的数据,各大火车站信息!import
- 在我们平时使用PyCharm的过程中,一般都是连接本地的Python环境进行开发,但是如果是离线的环境呢?这样就不好搭建Python开发环境
- 前言这里先说明一下,网上很多人说阿里规定500w数据就要分库分表。实际上,这个500w并不是定义死的,而是与MySQL的配置以及机器的硬件有
- 在项目开发的过程中,经常会遇到要查看图像细节的问题,这时候我们通常会,滚动滑轮将图像放大,或者使用电脑内置的放大器功能进行查看,如下图所示,
- 环境管理管理 Python 版本和环境的工具p:非常简单的交互式 python 版本管理工具。官网pyenv:简单的 Python 版本管理
- 本文探讨了提高MySQL数据库性能的思路,并从8个方面给出了具体的解决方法。1、选取最适用的字段属性MySQL可以很好的支持大数据量的存取,
- 前言VScode是一个相当优秀的IDE,具备开源、跨平台、模块化、插件丰富、启动时间快、颜值高、可高度定制等等优秀的特质,不愧是微软爸爸的私
- 因为要写个东西用到,所以百度了一下,居然有朋友乱写,而且比较多,都没有认真测试过,只对字符可以,但是对数字就不可以,而且通用性很差,需要修改
- 最近写了一个VUE的web app项目,需要实现某个部位吸顶的效果。即,页面往上滑动,刚好到达该部位时,该部分,固定在顶部显示。1、监听滚动
- 1 数据概览学生课程成绩:studentID、name、english、chinese、math,存在一定缺失值2 任务定义基于学生课程成绩
- 用户授权方法你可以通过发出GRANT语句增加新用户:shell> mysql --user=root mysqlmysql> G
- asp获取application对象代码如下: <%application("new&qu
- 在Python网络爬虫中,通常是通过TXT纯文本方式存储,其实也是可以存储在数据库中的;同时在WAMP(Windows、Apache、MyS
- 前一段时间有发过一个简单的JMAIL邮件发邮件的代码,今天就把这个代码做一个具体的注解,并增加了另外两个格式的代码,并举几个简单
- 关于argmax、argmin函数的使用1、在matlab的现有函数中,并没有argmax,argmin函数可以直接调用,要根据这两个函数的