POST的seo技术4:formId的提取难点
分类:SEO技术 热度:

  在前一篇博客“数据提交与数据通信”中,焦大说SEO或者程序这些基本原理都是很简单的,但是在实际操作中却有着千差万别的细节,因此能把一些看似最简单事情做圆满并不容易。我们说数据提交,一个最简单的数据提交比如登录,只需要提交已经已知的账号、密码就可以了(当然一般都有时间戳),但是有时候的数据提交却复杂得多,不仅仅是原理复杂,而且很多参数都是未知的、加密的甚或RAND函数生成的,这时候很多问题就来了。

  一般性数据参数,都是用来身份标识的。比如账号名称,也有用来验证身份的,比如密码,也有一些用于服务端进行标识的。比如一个页面第一次被打开,那么其cookies值和刷新后再次打开,对于浏览器端很多数据都是一致的(假使没有做修改),但是服务器端需要进行识别出来这2次的不一样,所以一般就加一个posttime参数进行识别。同理的,当你在登录百度贴吧后,服务器端也需要你一个识别的参数(很多时候用hash值代表),这个登录的hash参数可以用来你在做其他行为时候的一个识别,比如你在百度贴吧签到或者发帖。这时候,你提交数据的话,就需要率先把这个参数给提取出来,传递给提交的数据流,否则你就无法进行任何的行为操作。

  最常见的这类识别参数是formid,一般情况下参数都会伴随着登录而产生的,所以提取这个参数的原理也很简单,位置确定以及参数明确。但是提取并不都是简单的,有的程序提取就会有非常多的难点,大体可以分为以下几点:

  1,多个参数。因为我们做一个行为,可能设计的不仅仅是一个方面的识别,比如涉及到服务器对客户端的识别、服务器对用户身份的识别、服务器对所进行行为的识别、所进行行为的验证等,特别是有些参数需要结合其他的行为才能产生的,所以这时候就需要把这些中某些个参数进行多次的处理才能获得。比如你注册一个网站,可能需要几个步骤,那么在中间或者最后的步骤中可能就需要前面几个步骤的参数。

  2,找不到参数或者难以提取参数。提取参数目前一般常用的有正则提取以及源码提取等,比如火车头的就是用源码截取的,但是一般性的用Python这类编程的话,大多采用正则来完成的,对于一些不常规的参数,需要非常的了解正则才可以。比如好推网(5d6d)的formid是一个数据组分开的,如果不精通正则的话,那就无法进行了。

  3,JS加密的参数。我们知道一般性数据包传递都是明文传递的,但是也有很多数据传送为了安全采用了加密方式,比如最常见的MD5或者JS加密,数据被加密了有时候就需要把数据翻译出来,如果你知道翻译的规则,那么需要耗费一些机器就解决了,但是如果你连加密的规则都不懂的话,那么这个行为你就无法进行了。

  4,参数是有随机函数产生的位置产生的。我们提取一个参数,首先是确定在哪里提取、提取什么、怎么取的。对于一些程序来说,在URI(不是URL)上采用完全随机函数来产生formid,那么这时候你就遇到了一个问题,参数去哪里提取?

  以上这4种可能是最常见的提取难点,当然数据提交的问题不仅仅是参数提取上有困难,在其运行环境或者其他方面有时候也有些难点的。所以一件事听起来很容易,看起来很简单,但是做起来却并不是那么一件事。

本站部分文章转载自网络。版权归原作者所有,如有侵权请联系删除
上一篇:文章推荐系统的核心思想 下一篇:POST的seo技术3:数据提交与数据通信
猜你喜欢
各种观点
热门排行
精彩图文
  • POST的seo技术2:做seo需要懂程序吗
    POST的seo技术2:做seo需要懂程序吗
    POST的seo技术2:做seo需要懂程序吗,从前一篇文章开始,焦大决心写一些关于seo技术的东西,我所写的都是一些底层的原理,所以对于很多seo新手可能看着
  • SEO技术为何会停滞不前
    SEO技术为何会停滞不前
    SEO技术为何会停滞不前,很多人做了一段SEO之后,会感觉自己的SEO技术会停滞不前,感觉难以进步,对前途迷茫的很。笔者身边就有不少这样的人,要么坚
  • 笨笨:最新颖seo技术研究
    笨笨:最新颖seo技术研究
    笨笨:最新颖seo技术研究,seo是一种创新,我第一次听到这句话的时候,真的深有感触。在IT互联网领域内,创新一直存在并且驱动着互联网的改朝换代,而