一.写在前面 我写爬虫已经写了一段时间了,对于那些使用GET请求或者POST请求的网页,爬取的时候都还算得心应手.不过最近遇到了一个有趣的网站,虽然爬取的难度不大,不过因为表单提交的存在,所以一开始还是有点摸不着头脑.至于最后怎么解决的,请慢慢往下看. 二.页面分析 这次爬取的网站是:https://www.ctic.org/crm?tdsourcetag=s_pctim_aiomsg,该网站提供了美国的一些农田管理的数据.要查看具体的数据,需要选择年份.单位.地区.作物种类等,如下图: 根据以…
1. 创建Lambda函数,代码如下: from urllib import parse def lambda_handler(event, context): body = event['body'] print("-----------body:", body) request_data = {} for key_value in body.split('&'): key, value = key_value.split() request_data[parse.unquo…
老婆大人每个月都要上一个网站上去查数据,然后做报表. 为了减轻老婆大人的工作压力,所以我决定做个小程序,减轻我老婆的工作量. 准备工作 1.tesseract-ocr 这个工具用来识别验证码,非常好用. ubuntu上安装: sudo apt-get install tesseract-ocr 非常简单. 2.pytesseract和PIL(pillow) pytesseract用来在python中调用tesseract-ocr,PIL(pillow)用来加载图片,安装方法如下: pip3 in…
scrapy.FormRequest 主要用于提交表单数据 先来看一下源码 参数: formdata  (dict or iterable of tuples) – is a dictionary (or iterable of (key, value) tuples) containing HTML Form data which will be url-encoded and assigned to the body of the request. 从官方文档中可以看到默认是 post 请求…
阻止form表单提交这种场景可能在生活中,我们经常碰到,而在我们第一印象里面可能我们用return false 去阻止表单默认行为. 但是,有中情况我们用return false 不能阻止表单提交 <div class="warp"> <h2>登录到pfan空间</h2> <p>这里有更多的知识分享,交流.</p> <form action="/register" method = "pos…
view内容: <?php echo form_open('user/reg'); ?> <h5>用户名</h5> <input type="text" name="username" value="<?php echo $this->validation->username;?>" size="50" /> <span id="error…
http://blog.sina.com.cn/s/blog_95c8f1ac010198j2.html ******************************************************* form有2中方法把数据提交给服务器,get和post,分别说下吧. (一)get提交 1.首先说下客户端(浏览器)的form表单用get方法是如何将数据编码后提交给服务器端的吧. 对于get方法来说,都是把数据串联在请求的url后面作为参数,如:http://localhost:…
本节知识点大致为:静态文件配置.form表单提交数据后端如何获取.request方法.pycharm连接数据库,django使用mysql数据库.表字段的增删改查.表数据的增删改查 一.创建app,创建之后一定要先去settings.py注册 二.静态文件配置 html文件默认全部放在templates文件夹下 1.对于前段已经写好了的文件 我们只是拿过来使用 那么这些文件都可以称之为叫"静态文件". 静态文件可以是: 1.bootstrap一类的前端框架,已经写好了的 2.图片 3.…
如果SSH框架下,前段页面通过from表单提交数据之后,在后台对象显示空值,也就是接收不到值得情况下.首先保证前段输入框有值,这个可以在提交的时候用jQuery的id或者name选择器alert弹出测试下.如果前段弹出显示有值的情况下.可以去后台action中看看接受的对象有没有给get跟set方法.…
不使用Ajax,如何实现表单提交不刷新页面? 目前,我想到的是使用<iframe>,如果有其他的方式,后续再补. 举个栗子: 在表单上传文件的时候必须设置enctype="multipart/form-data"表示表单既有文本数据,又有文件等二进制数据.但是使用用Ajax没有enctype="multipart/form-data",所以不能直接上传文件,所以采用FormData对象包含数据上传. 这里我们不使用Ajax,直接提交表单,添加一个隐藏得i…