Untitled

 avatar
DevilsTongue
plain_text
a year ago
1.3 kB
1
Indexable
from seleniumwire import webdriver 
from seleniumwire.utils import decode as decodesw 
import json

 
def show_request_urls(driver, target_url): 
	driver.get(target_url) 
	urls [] 
	for request in driver.requests: 
		urls.append({"url": request.url}) 
	return urls


def show_response(driver, target_url): 
	driver.get(target_url) 
    resps = []
    
    for request in driver.requests:
        try:
            data = decodesw(
                request.response.body,
                reques.response.headers.get("Content-Encoding", "identity")
            )
            resp = json.loads(data.decode("utf-8"))
            resps.append(resp)
        except:
            pass
    return resps


def main():
    keywords = ["product", "api", "v1"]
	driver = webdriver.Firefox(seleniumwire_options={"disable_encoding": True}) 
	target_url = "https://www.adidas.co.uk/terrex" 

	urls = show_request_urls(driver, target_url)
	resps = show_response(driver, target_url)
    
	for url in urls:
		#print(url)
        for kw in keywords:
            if kw in url["url"]:
                print(url)
    
    with open('data.json', 'w') as f:
        json.dump(resps, f)
    
    driver.close()

if __name__ = '__main__':
	main()