吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1194|回复: 14
收起左侧

[求助] python学习求助

[复制链接]
xxx6805 发表于 2021-4-25 15:00
请哪位大神帮忙解惑,以下这段代码,想抓取第4页的表格,但只能抓取第一页,不知问题出在哪儿?非常感谢!
import requests
from bs4 import BeautifulSoup

def get_data(url):   

    formdata = {        
        "examId":5461,
        "enrollBatch":"",
        "province":"",
        "schoolName":"",
        "examId2":5461,
        "enrollBatch2":"",
        "specialtyName":"",
        "kskmgx":0,
        "optionType":1,
        "queryType":1,
        "pageFalg":"true",
        "pageSize":"50",
        "pageNo":4
        }   
   
    r = requests.post(url,data = formdata)   
    soup = BeautifulSoup(r.text,'lxml')   
    print(soup)

if __name__ == "__main__":

    url = 'http://query.bjeea.cn/queryService/rest/plan/115'

    get_data(url)

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

gentlespider 发表于 2021-4-25 15:20
我看的post请求参数跟你这个不一样啊,你试试我的 。翻页也是字符串
[Python] 纯文本查看 复制代码
import requests
from bs4 import BeautifulSoup


def get_data(url):
    formdata = {
    'pageFlag':'true',
    'token':'1619335009882',
    'pageSize':'50',
    'pageNo':'4',
    }
    r = requests.post(url, data=formdata)
    soup = BeautifulSoup(r.text, 'lxml')
    print(soup)


if __name__ == "__main__":
    url = 'http://query.bjeea.cn/queryService/rest/plan/115'
    get_data(url)
 楼主| xxx6805 发表于 2021-4-25 15:32
gentlespider 发表于 2021-4-25 15:20
我看的post请求参数跟你这个不一样啊,你试试我的 。翻页也是字符串
[mw_shl_code=python,true]import req ...

非常感谢!怪我没有说清楚,先在表头选择全部,查询后,formdata的参数就是我刚才的那样,最好是两者能关联起来,我不知怎么做,大神,能不能再帮看一下!!!
fanvalen 发表于 2021-4-25 16:16
你没有吧headers 和data分开所以失败
headers={POST /queryService/rest/plan/115 HTTP/1.1
Host: query.bjeea.cn
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:88.0) Gecko/20100101 Firefox/88.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Content-Type: application/x-www-form-urlencoded
Content-Length: 54
Origin: http://query.bjeea.cn
Connection: keep-alive
Referer: http://query.bjeea.cn/queryService/rest/plan/115
Cookie: JSESSIONID1=PEAIDhDQrk_yM9u8ZqBRcMdDJwbP9Lkq6CJi32MgNhqW75HpAHll!55154302; insert_cookie=22478270
Upgrade-Insecure-Requests: 1}

data={pageFlag=true&token=1619338218857&pageSize=50&pageNo=4}
polly521 发表于 2021-4-25 16:18
http://query.bjeea.cn/queryService/rest/plan/115?pageFlag=true&token=1619338392979&pageSize=50&pageNo=5

最后一个pageNo=5就是页码了,根据需要来调整吧
gentlespider 发表于 2021-4-25 16:18
xxx6805 发表于 2021-4-25 15:32
非常感谢!怪我没有说清楚,先在表头选择全部,查询后,formdata的参数就是我刚才的那样,最好是两者能关 ...

加个cookie就好了
 楼主| xxx6805 发表于 2021-4-25 16:32
polly521 发表于 2021-4-25 16:18
http://query.bjeea.cn/queryService/rest/plan/115?pageFlag=true&token=1619338392979&pageSize=50&pageN ...

大神,调整页码没有问题,但是录取批次只有“本科普通批”,我是要全部的。我也是初学,您说加个cookie就好了,我都不知道怎么加,惭愧!还请大神指点一二,谢谢!
 楼主| xxx6805 发表于 2021-4-25 16:33
fanvalen 发表于 2021-4-25 16:16
你没有吧headers 和data分开所以失败
headers={POST /queryService/rest/plan/115 HTTP/1.1
Host: query. ...

非常感谢!我先试一下,如有问题,再来请教!
fanvalen 发表于 2021-4-25 16:35
xxx6805 发表于 2021-4-25 16:33
非常感谢!我先试一下,如有问题,再来请教!

都要做成字典形式我只是复制给你个参考
polly521 发表于 2021-4-25 16:59
xxx6805 发表于 2021-4-25 16:32
大神,调整页码没有问题,但是录取批次只有“本科普通批”,我是要全部的。我也是初学,您说加个cookie就 ...

http://query.bjeea.cn/queryService/rest/plan/115?examId=5461&kskmgx=0&optionType=1&queryType=1&enrollBatch=本科提前批

enrollBatch 这个变量来控制类型,但如果要全部,把enrollBatch这个变量加上,不赋值即可
未命名1619341144.png
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-26 04:37

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表