python登陆asp网站页面的实现代码_python

使用python来登录asp网站和登录其他网站差不多,只是因为asp页面在每次请求的时候都要带上viewstate,因此使用python来登录的话就多了一个步骤,获得这个页面的viewstate之后带上这个和你要post或get到该页面的请求数据就好了,下面这段程序是登录一个asp系统,然后搜索某些数据并将这些数据保存下来.

#coding=utf-8
import urllib2 from bs4 import BeautifulSoup import urllib import cookielib import re import httplib import time 

loginUrl="登录地址"
headers={"User-Agent":"Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2062.120 Safari/537.36"}
studentCookie = cookielib.CookieJar()
pageOpener = urllib2.build_opener(urllib2.HTTPCookieProcessor(studentCookie))
loginPageRequest = urllib2.Request(loginUrl)
loginPageHTML = pageOpener.open(loginPageRequest).read() """
s=requests.Session()
s.headers.update(headers)
r=s.get(loginUrl)
""" print loginPageHTML
soup=BeautifulSoup(loginPageHTML) 

__VIEWSTATE=soup.find(id="__VIEWSTATE")['value']
__EVENTVALIDATION=soup.find(id="__EVENTVALIDATION")['value']
 print __VIEWSTATE print __EVENTVALIDATION 

login_data={
   ' __EVENTTARGET':'', '__EVENTARGUMENT':'', '__LASTFOCUS':'', '__VIEWSTATE':__VIEWSTATE, '__EVENTVALIDATION':__EVENTVALIDATION, 'ClienScreentHeight':'768', 'TextBoxUserID':'username', 'TextBoxPWD':'password', 'drpLanguage':'zh-CN', 'ButtonConfirm.x':'45', 'ButtonConfirm.y':'64'
   }
loginHeader = {  

          'User-Agent':'sssssssssssssssssssssss'
          }
loginData=urllib.urlencode(login_data)
loginRequest = urllib2.Request(loginUrl , loginData , headers)
loginResponse = pageOpener.open(loginRequest)
 print loginResponse 

theurl='登录后搜索页面地址'

mainPageRequest = urllib2.Request(theurl) 

mainPageHTML = pageOpener.open(mainPageRequest).read()
soup=BeautifulSoup(mainPageHTML) 

__VIEWSTATE=soup.find(id="__VIEWSTATE")['value'] #__EVENTVALIDATION=soup.find(id="__EVENTVALIDATION")['value'] print __VIEWSTATE #print __EVENTVALIDATION
searchdata={
      '__VIEWSTATE':__VIEWSTATE,
      '__EVENTVALIDATION':'',
      'txtCopNO':'', 'txtCAR_NO_S':'', 'drpStatus':'', 'txtHiddenOrOnline':'none', 'txtAuto_id':'', 'drpType':'', 'drpBaseType':'', 'ddlIsStatus':0, 'txtICCard':'', 'txtBILL_NO':'', 'txtGDateTime1':'', 'txtGDateTime2':'', 'drpFromKA':'', 'drpToKA':'', 'btnSearch':'%E6%9F%A5+%E8%AF%A2%28F%29'
} 

data2=urllib.urlencode(searchdata) 

searchData=urllib.urlencode(searchdata)
searcgRequest=urllib2.Request(theurl , searchData , headers)
searchResponse=pageOpener.open(searcgRequest)
 print loginResponse print searchResponse 

searchHtml=searchResponse.read() 

filename= r'C:\Users\Dell\Desktop\getlogin\file'+time.strftime('%d%H%M',time.localtime(time.time()))+'.html'
 file=open(filename,'w') file.write(searchHtml) file.close()
 print 'end' #raw_input()

原文:python登陆asp网站页面

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索python
asp
python实现页面跳转、asp.net实现页面跳转、python实现网页登陆、python实现登陆、html实现登陆页面实例,以便于您获取更多的相关知识。

时间: 2024-10-02 09:00:22

python登陆asp网站页面的实现代码_python的相关文章

python 实现文件的递归拷贝实现代码_python

所以就想把这些照片翻着看一遍,可是拷出来的照片手机 里是按时间自动分文件夹的,一个一个文件夹拷很是麻烦,于是打算写个python小脚本来完成这个工作(扯这么多,终于 到主题了,囧) 这是待拷贝的文件夹根目录,每个子目录下都有若干照片. 废话少说,上代码: 复制代码 代码如下: # -*- coding: utf-8 -*- #!/usr/bin/python #Filename:copyfile.py import os,shutil def mycopy(srcpath,dstpath): i

asp网站页面无法显示

问题描述 当网站从一个页面跳转到index.asp页面时,页面出现"HTTP/1.1200OKDate:Wed,06May200907:31:54GMTServer:Microsoft-IIS/6.0X-Powered-By:ASP.NETContent-Length:749Content-Type:text/htmlCache-control:private<framesrc="cortrol.asp"name="错误.index页面的代码如下:<ht

asp 网站静态化函数代码html_应用技巧

复制代码 代码如下: Function htmll(mulu,htmlmulu,FileName,filefrom,htmla,htmlb,htmlc,htmld) if mulu="" then mulu="/" if htmlmulu="" then htmlmulu="/" mulu=replace(SysRootDir&mulu, "//", "/") htmlmulu=

asp 网站静态化函数代码html

复制代码 代码如下: Function htmll(mulu,htmlmulu,FileName,filefrom,htmla,htmlb,htmlc,htmld) if mulu="" then mulu="/" if htmlmulu="" then htmlmulu="/" mulu=replace(SysRootDir&mulu, "//", "/") htmlmulu=

Python实现获取网站PR及百度权重_python

上一次我用requests库写的一个抓取页面中链接的简单代码,延伸一下,我们还可以利用它来获取我们网站的PR以及百度权重.原理差不多.最后我们甚至可以写一个循环批量查询网站的相关信息. 先说说GooglePR,全称PageRank.它是Google官方给出的评定一个网站SEO的评级,这个大家应该不陌生.既然是官方给出的,当然有一个官方的接口去获取它.我们这里就利用官方的接口获取谷歌PR. 复制代码 代码如下: GPR_HASH_SEED ="Mining PageRank is AGAINST

基于python的汉字转GBK码实现代码_python

如图,"广"的编码为%B9%E3,暂且把%B9称为节编码,%E3为字符编码(第二编码). 思路: 从GBK编码页面收集汉字 http://ff.163.com/newflyff/gbk-list/ 从实用角度下手,只选取"● GBK/2: GB2312 汉字"这一节,共3755个汉字. 看规律:小节编码从B0-D7,而针对汉字的编码从A1-FE,即16*6-2=94,非常有规律性. 第一步:把常用的汉字用python提取出来,按顺序存到一个字典文件里面,汉字用空格分

Python 爬虫多线程详解及实例代码_python

python是支持多线程的,主要是通过thread和threading这两个模块来实现的.thread模块是比较底层的模块,threading模块是对thread做了一些包装的,可以更加方便的使用. 虽然python的多线程受GIL限制,并不是真正的多线程,但是对于I/O密集型计算还是能明显提高效率,比如说爬虫. 下面用一个实例来验证多线程的效率.代码只涉及页面获取,并没有解析出来. # -*-coding:utf-8 -*- import urllib2, time import thread

Python 随机生成中文验证码的实例代码_python

python代码 复制代码 代码如下:  # -*- coding: utf-8 -*-  import Image,ImageDraw,ImageFont  import random  import math, string    class RandomChar():    """用于随机生成汉字"""    @staticmethod    def Unicode():      val = random.randint(0x4E00,

python开发的小球完全弹性碰撞游戏代码_python

完成这个小球的完全弹性碰撞游戏灵感来自于: 开发的小球完全弹性碰撞游戏代码_python-vb小球弹性碰撞"> 下面是我花了一周下班时间所编写的一个小球完全弹性碰撞游戏: 游戏初始化状态: 最下面的游标和修改小球的移动速度 源码部分: 复制代码 代码如下: #python tkinter#python version 3.3.2 from tkinter import * '''    判断    两个小球    {        圆心:A(x1,y1)  半径:r  X轴速度:Vax