如何使用 python 从 Fetch/XHR 获取 Respose JSON 数据?

问题描述 投票:0回答:1

如果我在

ditech process solutions private limited
portal 的搜索框中搜索数据“
https://lei-registrations.in/
”,那么如何使用请求模块使用 python 从 Fetch/XHR 获取响应 JSON 数据或请求 URL?

enter image description here

我尝试通过selenium代码但没有得到:

import time

import requests
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.common.by import By

# Create Chrome options with headless mode
chrome_options = Options()
chrome_options.add_argument("--headless")

# Set the path to the ChromeDriver executable
chrome_driver_path = "path/to/chromedriver"
# Create a Chrome webdriver with the specified options
driver = 
webdriver.Chrome(service=Service(ChromeDriverManager().install()))
url = 'https://lei-registrations.in/'
driver.get(url)
driver.implicitly_wait(180)
print('URL open successfully in Chrome browser...')
searchBox = driver.find_element(By.XPATH, "//input[@type='search']")
companyName = input("Type Company Name ")
time.sleep(2)
searchBox.send_keys(companyName)
print(f"{companyName} is processing..")
searchBox.submit()
driver.quit()

有人可以推荐吗?

python web-scraping python-requests
1个回答
0
投票

您可以使用此示例如何向服务器发出请求并以 Json 形式获取结果:

import requests
from bs4 import BeautifulSoup

api_url = "https://lei-registrations.in/wp/wp-admin/admin-ajax.php"

params = {
    "term": "ditech process solutions",  # <-- search term
    "country": "IN",
    "action": "get_search_companies",
}

headers = {
    "User-Agent": "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:122.0) Gecko/20100101 Firefox/122.0"
}

data = requests.get(api_url, params=params, headers=headers).json()

if data["success"]:
    soup = BeautifulSoup(data["data"], "html.parser")
    for r in soup.select(".searchResults_title"):
        name = r.select_one(".searchResults_name").text
        number = r.select_one(".searchResults_number").text

        print(f"{name:<50} {number}")

打印:

DITECH PROCESS SOLUTIONS PRIVATE LIMITED           U72300MH2008PTC179923
HITECH PROCESS CONTROLS PRIVATE LIMITED            U24231TN1988PTC015483
DYNACIATE PROCESS SOLUTIONS PRIVATELIMITED         U24233MH2011PTC216202
BRILLIANT PROCESS SOLUTIONS LLP                    AAE-8973
FUTURISTIC PROCESS SOLUTIONS PRIVATELIMITED        U72300KL2005PTC018914
VERTEXONE PROCESS SOLUTIONS PRIVATELIMITED         U74999DL2015PTC275822
INGENIOUS PROCESS SOLUTIONS PRIVATELIMITED         U74210TN2002PTC133188
AGILEDGE PROCESS SOLUTIONS PRIVATELIMITED          U74140KA2011PTC056535
SYNERGY PROCESS SOLUTIONS PRIVATELIMITED           U74999KL2010PTC025583
FLAIRTECH PROCESS SOLUTIONS PRIVATELIMITED         U74999PN2020PTC197082
PROCESS TECHNOLOGY SOLUTIONS PRIVATELIMITED        U29100MH2007PTC173767
FINELINE PROCESS SOLUTIONS PRIVATELIMITED          U29100PN2019PTC182625
SHIVASTE PROCESS SOLUTIONS PRIVATELIMITED          U51100DL2019PTC344406
DBN PROCESS SOLUTIONS PRIVATE LIMITED              U72200KL2008PTC022783
DIOSNA PROCESS SOLUTIONS PRIVATE LIMITED           U74900MH2015PTC270457
ECHEM PROCESS SOLUTIONS PRIVATE LIMITED            U24100TG2009PTC063720
ENFLOW PROCESS SOLUTIONS PRIVATE LIMITED           U31904PN2018PTC178859
EOGY PROCESS SOLUTIONS PRIVATE LIMITED             U74999MH2016PTC288991
EUNOIA PROCESS SOLUTIONS PRIVATE LIMITED           U72900RJ2017PTC056834
MSM PROCESS SOLUTIONS PRIVATE LIMITED              U74110MH2015PTC265506
QUANTA PROCESS SOLUTIONS PRIVATE LIMITED           U74120GJ2009PTC055943
METOREX ENGINEERING & PROCESS SOLUTIONS LLP        AAJ-5024
MLRS BUSINESS PROCESS SOLUTIONS LLP                AAG-6818
CSN PROCESS SOLUTIONS PRIVATE LIMITED              U72501AP2019PTC112846
SAWANT PROCESS SOLUTIONS PRIVATE LIMITED           U51397MH2004PTC145637
© www.soinside.com 2019 - 2024. All rights reserved.