python爬取ashx页面的post请求

我以一个类似的情况来提问,也是论坛中有个网友1年前提出的问题,但是他没有写出后续....

网页地址:http://www.lzggzyjy.cn/InfoPage/InfoList.aspx?SiteItem=8

需求:python post请求获取该页面(感觉很简单)

分析页面:
图片说明

图片说明

我把代码贴上来:

 #! /usr/bin/env python3
# -*- coding:utf-8 –*-


import requests
import json

import sys
reload(sys) 
sys.setdefaultencoding('utf-8')


def testDownloadLanZhou():
    testUrl = 'http://www.lzggzyjy.cn/ajax/Controls_InfoListControl,App_Web_2ewqtbev.ashx?_method=getCurrentData&_session=rw'
    testHeaders = {
            'User-Agent':'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.162 Safari/537.36',
            'Host':'www.lzggzyjy.cn',
            'Referer':'http://www.lzggzyjy.cn/InfoPage/InfoList.aspx?SiteItem=8',
            'X-Requested-With':'XMLHttpRequest',
            # "Content-Type":'text/plain;charset=UTF-8',
            "Cookie":'ASP.NET_SessionId=hcdc1tywt5dgszd5bziox4sc; SERVERID=b925605187c7d5d37f1395627a969c75|1521298751|1521298681'
            }

    # testParams = {'_method':'getCurrentData', '_session':'rw'}
    testData = {'currentPage':'1', 'Query':''}

    # 将dic 转换成json字符串
    # jsonDataString = json.dumps(testData)
    # print(jsonDataString)
    # print(type(jsonDataString))

    # # 对应每个参数添加换行隔开
    # newString = jsonDataString.replace(',', '\n')
    # print(newString)

    resq = requests.post(testUrl, headers=testHeaders, data=testData)
    print(resq.content)

这个请求怎么弄都不对,获取不到正确的html页面......请各位指点迷津

2个回答

这个网站有多一层东西,你可以这么干。
先请求http://www.lzggzyjy.cn/InfoPage/InfoList.aspx?SiteItem=8
然后用正则找到
然后请求这个/ajax/Controls_InfoListControl,App_Web_xxxxxxx.ashx。

获得内容:

var Controls_InfoListControl = {
getCurrentData:function(currentPage,Query,callback,context){return new ajax_request(this.url + '?_method=getCurrentData&_session=rw','currentPage=' + enc(currentPage)+ '\r\nQuery=' + enc(Query),callback, context);},
getTotalPages:function(Query,callback,context){return new ajax_request(this.url + '?_method=getTotalPages&_session=rw','Query=' + enc(Query),callback, context);},
url:'/ajax/Controls_InfoListControl,App_Web_xxxxxxxx.ashx'
}

然后再去请求http://www.lzggzyjy.cn/ajax/Controls_InfoListControl,App_Web_xxxxxxxx.ashx?_method=getCurrentData&_session=rw

就可以了。

主要就是这xxxxxxx,每次都不一样。cookie和sessionid不动不影响的。

在分析的时候,需要看一下cookies。

你没有设置cookies,这个信息应该很重要。

Request Cookies             
ASP.NET_SessionId   yl4xstdrkpsiglbs5ijixhah                
SERVERID    0c51fcf27e5a43864444c2a531b3c0e0|1521356557|1521356321                  
Response Cookies                                    
SERVERID    0c51fcf27e5a43864444c2a531b3c0e0|1521356557|1521356321
JustinAelx
罗林公爵 我的header里面有设置
一年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
一般处理程序ashx的post请求
ashx可直接获取HttpContext对象,虽然很灵活,但也导致操作有些许复杂,Content-Type和Request Body与mvc、webapi的不同。js则需要这样写function btnSumit_click() { var datapama = { name: $("#name").val(), password: $("#password"
求一个.ashx页面的post实例
假设我要在给一个页面www.aaa.com/jjjj.ashx发送post,包含字段有title和body,www.aaa.com/jjjj.ashx?title=ttttttttttttttttttt&body=bbbbbbbbbbbbbbbbb rnrn 这样发送到底对不对。
post请求页面的问题
一个普通的HTML页面中有一个form,定义如下:rn rnform里有一个文本输入框和一个submit按钮,输入值并点击submit按钮后提交给/query.asp文件.怎么用java模拟这个submit按钮,带上一个参数,提交并访问/query.asp页面的内容?(注意:/query.asp的内容是由post那个参数的不同而产生不同的内容!) rnrn
post请求网站数据爬取!!!Python学习笔记!
对于刚开始学习Python的童鞋来说,对于网站的爬取可能很模糊,对网站的请求方式也不太了解。下面先简单介绍一下几种常见的网站请求方式,get、post
ashx页面的session值
[code=C#]if (context.Request["type"] != "" && context.Request["type"] == "add")rn rn string sku = Tools.getSafeCode(context.Request["sku"]);rn Hashtable hashCar;rn if (context.Session["wishCar"] == null)rn rn hashCar = new Hashtable();rn hashCar.Add(sku, 1);rn context.Session["wishCar"] = hashCar; rn rn elsern rn hashCar = (Hashtable)context.Session["wishCar"];rn if (hashCar.Contains(sku))rn rn hashCar.Remove(sku);rn hashCar.Add(sku, 1);rn rn elsern rn hashCar.Add(sku, 1);rn rn rn sb.Remove(0, sb.Length);rn rn foreach (Object key in hashCar.Keys)rn rn sb.Append("\"id\":\"" + key + "\"");rn rn rn context.Response.Write(sb.ToString());rn rnrn else if (context.Request["sku"] != "" && context.Request["type"] == "del")rn rn string sku = Tools.getSafeCode(context.Request["sku"]);rn Hashtable hashCar;rn hashCar = (Hashtable)context.Session["wishCar"];rn hashCar.Remove(sku);rnrn rn rn rn rn [/code]rnrn这个代码是写在ashx页面的,aspx页面通过点击无法传递session的值
爬取页面的json数据
package pachong; import java.io.BufferedReader; import java.io.FileOutputStream; import java.io.FileWriter; import java.io.IOException; import java.io.InputStream; import java.io.InputStream
POST请求爬取数据实战
该视频教程主要讲解Python爬虫技术原理,与爬虫基础技术。Python爬虫入门+浏览器伪装与验证码识别。rn
python爬取异步加载的页面的信息
假如某些页面是异步加载他是异步js加载出来的,目的想要拿到这些的url得时候,方法两种。 (一)可以用chrome headless,参考网址   python selenium 用法 和 Chrome headless: https://blog.csdn.net/freeking101/article/details/70056173 可以执行js语句 (二)或者用pyppet...
python 爬取所有页面的对应数据
一般来说不同页码最后page=或者p  等等,只需要转化一下后面对应的数值即可,或者从尾页对应URL找到最后一页,也就是总页数即可 案例一: #!/usr/bin/env python # -*- coding: utf-8 -*- import pymysql # 导入 pymysql import re import time import datetime import reque...
$.post()请求ashx页面,服务器没有响应
做了一个登录页面(Login.htm),登录成功之后跳转至Main.htm。rn在Login.htm内嵌入了一段js代码rn[code=javascript]rn$.post("Login.ashx?time=" + new Date(), rn "name": name, "pwd": pwd , rn function (data, status) rn if (status != "success") rn $("#lb_btnmsg").text("request service fail");rn return;rn rn if (data == "ok") rn window.location.href = "../Main/Main.htm";rn rn else rn $("#lb_btnmsg").text("login fail");rn rn );rn[/code]rnrn在工程里面运行程序可以正常登录,跳转至main.htm。rn但是打包部署在IIS上后,点击登录,执行到这个$.post()的时候就没得反应了。rn跪求各位大虾指点。rnrnrn
多个img src请求同一个ashx页面的问题
N久没上论坛了.今天遇到一个奇怪的问题,想问问各位牛牛.rn有一个html 页面rn[code=HTML]rnrnrnrn[/code]rnrntextHandler.ashx页面rn[code=C#]rnpublic class textHandler: IHttpHandler rn private FileAccess fileAccess;//此处定义访问文件类 rn public void ProcessRequest (HttpContext context) rn fileAccess = new FileAccess();//此处实例化文件类rn if (context.Request["xxxx"] != null)rn rn //省略N个字rn rn rnrn private void GetFile()rn rn byte [] b = fileAccess.GetFile();rn //然后输出.......rn rnrnrn[/code]rnrn我先说现象:每次加载html图片总有的不显示,不是图片不存在哦,3个图片随机的不显示.rn跟踪后发现是,有时 fileAccess = new FileAccess(); 会报错.rnrn暂时解决方法: GetFile() 里面单独实例化 new FileAccess(),然后在调用 GetFile().rnrn我不解的是: 为什么定义的 private FileAccess fileAccess;//此处定义访问文件类 会影响到下次 请求了??rnrn
【python】GET请求与POST请求
GET请求import urllib.parse import urllib.request url = “http://www.baidu.com/s” data ={‘wd’:’suzy’} data = urllib.parse.urlencode(data) full_url = url +’?’+data print(full_url) response = urllib.request.
jq不断请求ashx页的问题(c#)
客户端界面中只放一个按钮,点击按钮跳转.ashx页面(服务器指定路径下的文件是否存在)rn rn 存在就下载到客户端 不存在返回客户端等待 每隔几秒在次请求.ashx页 依次请求。直至找个文件
python的post请求实例
#coding=utf-8 import json import urllib2 import base64 import sys # start=sys.argv[1] # end=sys.argv[2] # DEFAULT_URL ="" DEFAULT_URL ="" auth = base64.b64encode("admin" + ':' + "admin") for i in ...
python 发送post请求
利用python的 requests包发送post请求,上传数据及文件
python 模拟POST请求
最近的开发工作用到了post请求第三方的接口,代码如下 #!/usr/bin/python # coding:utf8 import requests url = "http://www.baidu.com" headers = {"Content-type": "application/json;charset=utf-8"} post_data = {"username": "sprin...
python爬虫请求—post
以python为编程语言利用第三方模块requests,模拟浏览器登陆利用post方式。
Python——post请求
示例:import requests post_url = 'https://api.weixin.qq.com/cgi-bin/component/api_query_auth?component_access_token=' + component_access_token post_data = json.dumps({"component_appid": WXTHIRD_APP_ID,"p...
Python 翻译 Post请求
浏览器使用的Chrome 翻译是小牛翻译的开放演示http://fanyi.niutrans.com/ 使用Chrome开发者工具 F12 进入开发者模式 直接复制link 在headers 的 From Data 找到需要POST的值 import urllib import urllib2 test_data = {"tgt_t
python 百度翻译post请求
$cat youdao.py #encoding:utf8 import sys import urllib2 from lxml import etree import json import urllib from optparse import OptionParser ua_header = {"User-Agent": "Mozilla/5.0 (Windows NT 1
Python简单模拟POST请求
1、 # -*- coding: utf-8 -* import requests url = "https://xxx/Account/Login" querystring = {"LoginName":"xxx","PassWord":"xxx"} headers = {} response = requests.request("POST", url, headers=he
python 发送POST请求
import urllib.request import urllib.parse url = "http://www.baidu.com" data= { "username" :"sunck", "passwd" :
页面的请求过程
1、浏览器的url请求 2、递归寻找DNS服务器 3、连接目标IP并建立TCP连接 4、向目标服务器发送http请求 5、web服务器接收请求后处理 6、web服务器返回相应的结果【无效、重定向、正确页面等】 7、浏览器接收返回的http内容 ================================前端解析分割线============================
请求页面的路径
要怎么才能得到请求当前页面的上一页面的路径,或者名称?
xmlhttp调用ashx页面的问题
我有一个ashx页面,用来动态生成一个WORD文件并提供下载的,代码如下:rnstring Path = Server.MapPath("WordFiles/MyWord.doc");rn Document doc = new Document(Path); //载入模板rn if (doc.Range.Bookmarks["Name"] != null)rn rn Bookmark mark = doc.Range.Bookmarks["Name"];rn mark.Text = "加油";rn rn if (doc.Range.Bookmarks["Score"] != null)rn rn Bookmark mark = doc.Range.Bookmarks["Score"];rn mark.Text = "99";rn rn doc.Save("demo.doc", SaveFormat.Doc, SaveType.OpenInWord, Response); //保存为doc,并打开rnrn上述代码能够实现在线生成WORD并在客户端弹出保存文件的对话框。rnrn现在,我的问题是,我想使用xmlhttp请求上面的ashx页面,实现无刷新下载,这样页面就不会闪了。请大家帮忙,一个小时后我回来结贴!。
.ashx 如何操作页面的用户控件
在一个1.aspx页面里面有个fileuplaod控件,我现在要通过一般处理程序也就是.ashx文件来接受fileuplaod的路径,怎么做,高手求救
JQuery调用ashx页面的问题
[code=csharp]rn rn[/code]rnrn[code=csharp]rnpublic void ProcessRequest(HttpContext context)rn rn context.Response.ContentType = "application/json";rn //POST方式获取传递的数据 rn string id = context.Request.Form["id"];rn bool result = bll.UpdateCount(Convert.ToInt32(id));rn rn context.Response.End(); rn rn[/code]rnrn为什么ashx页面里的id一直未null
亚马逊商品页面的爬取
-
爬取多个页面的数据
代码如下:# -*- coding:utf8 -*- #导入requests库,取别名res import requests as res #导入bs4包,取别名bs from bs4 import BeautifulSoup as bs #导入数据库驱动包 import MySQLdb #声明页面从哪开始 j = 1 #循环遍历每个页面 while j 111: ##获取目标网站的网页
爬取多个页面的新闻标题
#这里RStudio使用的是R-3.4.4环境,xml2和magrittr是加载rvest #包之前需要的包,否则rvest包无法加载 library(xml2) library(magrittr) library(rvest)#爬取网页的主要包 library(selectr)#解析器,少了这个包,后面会报错 url0<-"http://news.sina.com.cn/china/"#获...
爬取页面的内容问题
在用爬虫爬取大量的网站的时候,由于各个网站的布局都是不一样的,而且页面上包含了很多像广告这些东西,想要通过程序自己来判断和提取正文内容,那么问题来了,怎样精确的拿到一个URL中的正文内容呢?各位大神给点思路,感谢!
Python 最简单爬虫爬取数据(二):简单POST请求
  对网页进行抓包,查看请求,获取相应的表单数据 构建好Form_data后,利用parse.urlencode进行标准化在进行utf8编码 请求头信息也要进行必要的设置 有时可能会抛出异常   这是不设置user-agent的情况,输出错误  设置以后正确显示...
python在post请求下爬取数据,返回的值为什么为空?
本人小白,尝试爬杭州市二手房挂牌信息,rn网址:http://jjhygl.hzfc.gov.cn/webty/gpfy/gpfySelectlist.jsp,rn代码如下rnrn```rnimport requestsrnurl = 'http://jjhygl.hzfc.gov.cn/webty/WebFyAction_getGpxxSelectList.jspx'rndata = 'page': 1rnheaders = 'Host': 'jjhygl.hzfc.gov.cn',rn 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:68.0) Gecko/20100101 Firefox/68.0',rn 'Accept': 'text/html, */*; q=0.01',rn 'Accept-Language': 'en-US,en;q=0.5',rn 'Accept-Encoding': 'gzip, deflate',rn 'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8',rn 'X-Requested-With': 'XMLHttpRequest',rn 'Content-Length': '311',rn 'Connection': 'keep-alive',rn 'Referer': 'http://jjhygl.hzfc.gov.cn/webty/gpfy/gpfySelectlist.jsp',rn 'Cookie': 'ROUTEID=.lb6; JSESSIONID=2E78A1FE8DBC80F1CEEE20264BE96B1F.lb6; Hm_lvt_70e93e4ca4be30a221d21f76bb9dbdfa=1559115557; Hm_lpvt_70e93e4ca4be30a221d21f76bb9dbdfa=1559115557',rn 'Pragma': 'no-cache',rn 'Cache-Control': 'no-cache'rnr = requests.post(url, data =data, headers = headers)rnr.contentrnr.textrn```rn返回结果是rnrnrn```rnb'"list":[],"pageinfo":"\xe6\x9a\x82\xe6\x97\xa0\xe6\x95\xb0\xe6\x8d\xae"'rn'"list":[],"pageinfo":"暂无数据"'rn```rn![图片说明](https://img-ask.csdn.net/upload/201905/29/1559122181_853820.png)rn请问怎么才能得到图中的信息?
JavaScript能读取页面的POST请求么?
用javascript读取get请求没问题的rn就是想知道它能不能读post来的参数rn在jsp里是用request来读的rnjavasctipt能办到么?
post请求方式的翻页爬取内容及思考
1 #coding=utf-8 2 3 import urllib2 4 import urllib 5 import json 6 9 output = open('huizho.json', 'w') 11 for page in range(1,30): //爬取的页数,从1至29页 12 request =urllib2.Request('ht...
POST请求爬取数据实战1
本周课程主要讲解Python网络爬虫的基础内容。具体有:Python中的正则表达式,网络爬虫基础介绍,爬虫的工作原理,urllib、urllib3和requests库的使用,GET和POST请求抓取数据实战,网络爬虫中常见错误的处理,以及网页信息解析库的使用(Xpath,BeautifulSoup,PyQuery)。
POST请求爬取数据实战2
本周课程主要讲解Python网络爬虫的基础内容。具体有:Python中的正则表达式,网络爬虫基础介绍,爬虫的工作原理,urllib、urllib3和requests库的使用,GET和POST请求抓取数据实战,网络爬虫中常见错误的处理,以及网页信息解析库的使用(Xpath,BeautifulSoup,PyQuery)。
爬虫爬取get/post等请求的数据
(此文章认为大家有一定基础而作)一.请求地址       基于restful编程风格的崛起,不管是前端还是后端,大家应该对请求地址都不陌生。       一般大家获取页面请求地址可以直接用浏览器的开发者模式获取,如下面我用chrome截获本篇文章保存的请求地址:选择开发者模式->Network;左边表示我们请求的网页,右边是具体参数;二、请求参数在General模块可以清楚的看到我们请求的地...
利用post请求爬取动态评论
任务:利用post请求爬取动态评论实现:       酒店网站的评论是动态的,是实时更新的,所以在网页源代码里只有一部分,所以要想得到所有的就得在网页的检查元素里(我的是火狐浏览器),右击检查元素,如下图       一般get请求就可以得到网页源代码里边我们想要的,但是不能得到动态信息,所以要用post请求,此时我们需要参数里面的listRequest.hotelIDs,这是为什么呢?因为在网页...
post请求爬取艺龙酒店的评论
爬取酒店的评论 使用的库 import urllib2 import requests import re import time import json 通过抓包发现酒店的id在asyncsearch里 网址:http://www.elong.com/ajax/list/asyncsearch 是post的请求 设置post参数和head的值 hea
相关热词 c++和c#哪个就业率高 c# 批量动态创建控件 c# 模块和程序集的区别 c# gmap 截图 c# 验证码图片生成类 c# 再次尝试 连接失败 c#开发编写规范 c# 压缩图片好麻烦 c#计算数组中的平均值 c#获取路由参数