0

我已经编写了一个代码来从发布请求中抓取页面,但仍然无法正常工作,我认为问题出在发送帖子的数据变量上,我尝试在 http live header 中手动更改请求的值,它可以抓取json 数据,但在 python3 中,还没有。

请帮忙,谢谢!

这是代码:

import requests

def print_hi(start):
    headers = {'User-Agent': 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:91.0) Gecko/20100101 Firefox/91.0'}
    url = "https://lite.ip2location.com/get-range.json?country=AE"
    cookies = {"PHPSESSID":"h90gasrdrruf0t4sqrvlr6onnh",
               "_gcl_au":"1.1.459429746.1630175151",
               "_ga_4JBHWLMXXQ": "GS1.1.1630175150.1.0.1630175152.0",
               "_ga":"GA1.2.1147785651.1630175151",
               "_gid":"GA1.2.1338887027.1630175152"
            }
    data = {'draw': 3, 'columns[0][data]':0, 'columns[0][name]' :'', 'columns[0][searchable]' : 'true', 'columns[0][orderable]' : 'false', 'columns[0][search][value]' :'', 'columns[0][search][regex]' :'false', 'columns[1][data]':1,'columns[1][name]':'','columns[1][searchable]':'true', 'columns[1][orderable]':'false', 'columns[1][search][value]': '', 'columns[1][search][regex]':'false', 'columns[2][data]':2, 'columns[2][name]':'', 'columns[2][searchable]':'true', 'columns[2][orderable]':'false', 'columns[2][search][value]':'', 'columns[2][search][regex]':'false', 'order[0][column]' :0, 'order[0][dir]':'asc', 'start': int(start), 'length':25, 'search[value]':'', 'search[regex]': 'false'}
    req = requests.get(url, data=data, headers=headers, cookies=cookies)
    print(data)
    with open("ps-ip-ranges.txt", "a") as fi:
        fi.write(str(req.content)+"\n")
    print("[+]\t"+str(start)+"\t is saved.")


if __name__ == '__main__':
    for i in range(25,250000,25):
        print_hi(i)
4

0 回答 0