コード例 #1
0
def personal_loan_links():
    link_list = []
    tc_personal_loan_url = "https://www.topcompare.be/api/personal-loan/v2/products"

    querystring = {
        "journeyId": "01007747-c4dd-49a2-a89c-3ea493674bde",
        "category": "personalLoan",
        "wantToBorrow": "8000",
        "wantToBorrowTime": "48",
        "wantToBorrowTimeUnit": "month"
    }

    response = requests.request("GET",
                                tc_personal_loan_url,
                                params=querystring)

    soup = BeautifulSoup(response.text, "html.parser")

    btn_list = soup.find_all("button")

    for i in range(len(btn_list)):
        if "data-url" in btn_list[i].attrs:
            link_list.append({
                "id": btn_list[i].attrs["data-cgg-id"],
                "link": btn_list[i].attrs["data-url"]
            })
    return no_double(link_list)
コード例 #2
0
def car_loan_links():
    ages_of_car = ("new", "0-1", "2-3", "3-4", "4-5", "5+")
    types_of_car = ("classic", "green")
    all_car_links = []
    for car_type in types_of_car:
        for car_age in ages_of_car:
            all_car_links += links_by_car_age(car_age, car_type)
    return no_double(all_car_links)
コード例 #3
0
ファイル: app_rating.py プロジェクト: valentin-paris/scrapers
def topCompare_product_rates(tc_rate):
    prod_list = []
    p_hash = {}
    for value in list(tc_rate):
        prod_list.append({product_to_bank(value): tc_rate[value]})
    for elmt in fileUtils.no_double(prod_list):
        for key in elmt:
            p_hash[key] = elmt[key]
    return p_hash
コード例 #4
0
def links_by_car_age(car_age, car_type):
    link_list = []
    url = "https://www.topcompare.be/api/personal-loan/v2/products"

    querystring = {
        "journeyId": "207089e3-f8ed-442d-9ff5-f5397df81fa6",
        "category": "vehicleLoan",
        "wantToBorrow": "15000",
        "wantToBorrowTime": "48",
        "wantToBorrowTimeUnit":
        "personal-loan.filter.vehicleLoan.default.wantToBorrowTimeUnitKey",
        "greenOrClassicCar": car_type,
        "carAge": car_age
    }

    headers = {
        'User-Agent':
        "PostmanRuntime/7.17.1",
        'Accept':
        "*/*",
        'Cache-Control':
        "no-cache",
        'Postman-Token':
        "e947b905-571c-477e-b314-252de2ff980e,5aa72bb4-6916-4af3-9aaf-b47942957b08",
        'Host':
        "www.topcompare.be",
        'Accept-Encoding':
        "gzip, deflate",
        'Cookie':
        "analytics_id=8945f211-a382-4c70-90c9-7c674c4963bb; JSESSIONID=33F5410109808647BB90BD0AB821BF0E; "
        "AWSELB=5907FD4314C525EB17E3302227917862180282663C9253C7E2E142C38D3AD8A65ECC310A62E932FAB0B397F83780C"
        "3268F4A83D7017DAF7861D5E3A2ABA4A2470B514F010B",
        'Connection':
        "keep-alive",
        'cache-control':
        "no-cache"
    }

    response = requests.request("GET",
                                url,
                                headers=headers,
                                params=querystring)

    soup = BeautifulSoup(response.text, "html.parser")

    btn_list = soup.find_all("button")

    for i in range(len(btn_list)):
        if "data-url" in btn_list[i].attrs:
            link_list.append({
                "id": btn_list[i].attrs["data-cgg-id"],
                "link": btn_list[i].attrs["data-url"]
            })
    return no_double(link_list)
コード例 #5
0
def moto_links_by_age(moto_age):
    link_list = []
    url = "https://www.topcompare.be/api/personal-loan/v2/products"

    querystring = {
        "journeyId": "74ec2d64-7758-4a05-bf53-28de1dc24bc1",
        "category": "moto",
        "wantToBorrow": "15000",
        "wantToBorrowTime": "48",
        "wantToBorrowTimeUnit":
        "personal-loan.filter.moto.default.wantToBorrowTimeUnitKey",
        "carAge": moto_age
    }

    headers = {
        'User-Agent':
        "PostmanRuntime/7.17.1",
        'Accept':
        "*/*",
        'Cache-Control':
        "no-cache",
        'Postman-Token':
        "394b050d-aacd-48ee-bbb7-db67fa8c6918,a6911efd-b2bc-424a-86df-08d5140a6998",
        'Host':
        "www.topcompare.be",
        'Accept-Encoding':
        "gzip, deflate",
        'Cookie':
        "analytics_id=8945f211-a382-4c70-90c9-7c674c4963bb; JSESSIONID=33F5410109808647BB90BD0AB821BF0E;"
        " AWSELB=5907FD4314C525EB17E3302227917862180282663C9253C7E2E142C38D3AD8A65ECC310A62E7F6249152172C6"
        "8019D848119A655497DAF7861D5E3A2ABA4A2470B514F010B",
        'Connection':
        "keep-alive",
        'cache-control':
        "no-cache"
    }

    response = requests.request("GET",
                                url,
                                headers=headers,
                                params=querystring)
    soup = BeautifulSoup(response.text, "html.parser")

    btn_list = soup.find_all("button")

    for i in range(len(btn_list)):
        if "data-url" in btn_list[i].attrs:
            link_list.append({
                "id": btn_list[i].attrs["data-cgg-id"],
                "link": btn_list[i].attrs["data-url"]
            })
    return no_double(link_list)
コード例 #6
0
def all_loan_links():
    return no_double(personal_loan_links() + car_loan_links() +
                     all_moto_links())
コード例 #7
0
def all_moto_links():
    ages_of_moto = ("new", "0-1", "2-3", "3-4", "4-5", "5+")
    all_links = []
    for age in ages_of_moto:
        all_links += moto_links_by_age(age)
    return no_double(all_links)