'getting 403 status code using python requests module while making post request

403 forbidden

I am trying to scrape priceline.com but using the below code I am getting a 403 error. plz help
Here I am using headers and payload to make a post request. But getting 403 status code. Not able to figure out what am I doing wrong.

import requests

# URL of API to make a call
URL = "https://www.priceline.com/pws/v0/pcln-graph/"

headers = {
"Accept": "*/*",
"Accept-Encoding": "gzip, deflate, br",
"Accept-Language": "en-GB,en-US;q=0.9,en;q=0.8",
"Apollographql-Client-Name": "relax",
"Apollographql-Client-Version": "master-1.1.910",
"Content-length": "8142",
"Content-type": "application/json",
"Cookie": "PL_CINFO=349a89dc15301f3eec2d833947878b34~1652115866~v2; SITESERVER=ID=349a89dc15301f3eec2d833947878b34; rl_page_init_referrer=RudderEncrypt%3AU2FsdGVkX1%2BUe8yvMYKkXWU28PHqLyMC16GjcPDq780%3D; rl_page_init_referring_domain=RudderEncrypt%3AU2FsdGVkX19ukyvToj870RCvcviI%2FoPSgXipYL5wSBg%3D; _pxvid=148668a7-cfba-11ec-a59e-566566584f6d; ftr_ncd=6; G_ENABLED_IDPS=google; _gcl_au=1.1.1775993005.1652115889; _fbp=fb.1.1652115888796.2074105495; __pdst=226c70a74763462893ff06610794b5df; __gads=ID=5a5bda2a1ee1f13c:T=1652115870:S=ALNI_MZCeI52sYD9VJxEV2XAfTb7m8MmNA; _lc2_fpi=e176af9f9712--01g2my3t47hbgnmar9jfs2dk6m; vid=v202205191433486302a5fb; _pxhd=8Y24DWlWuLBl7RAAe79KDY4ZYntDF4I/5h8J1npsF47ii5/NiTruo9YtHLKPcREcqtpf7dzc/e4oPNjIiLBS1w==:w/IJ/Uo8Gs0Bavhe3h6Okf9y3rVMfJT9HjHetyQ/NMlay2K8nVcYRxovxJwZ4RWIOdUTOGmoL53wBoLdA9QPSDXzuINv9Rr/0lUloJpmwMk=; SL_G_WPT_TO=en; pxcts=b39b9c94-d780-11ec-b4dc-516c41697a56; load_fs_for_user=false; should_log_to_splunk=false; SL_GWPT_Show_Hide_tmp=1; SL_wptGlobTipTmp=1; _gid=GA1.2.660709288.1652970850; __gpi=UID=0000053cd5909eb7:T=1652115870:RT=1652970832:S=ALNI_MYdDX6xZH7lstDiEyRVYbj4wnEt3Q; DCS=MnwxNjUyOTcwOTQ2fndlc3QtcmVnaW9u.UDA2WTQvRDdiNFZVSFhBN2kyOFBCeE1KREdBZHVzZDlCYnBlMXhvaEVnaz0=; _li_dcdm_c=.priceline.com; cto_bundle=IcRVFV8wR1pYSXZZYzlmJTJCTDhjZk8wOXE1RnlocTZGbDYlMkZqcHVhYlpyaTI0UGVvQ3Q0VFdFSzNFdDc4TExtdUJHWFo2ZjRKdkR0dG0zV05zMTBJSDNoOFhwekJoRGxBWGExZFNMaGhoS1dtVUxKRHBYbndaUVElMkZMT29zbWtNNloyTndJOVFqQzZ4UGVkaVNwcXo1Q1RrUEpmVFElM0QlM0Q; AMP_TOKEN=%24NOT_FOUND; rl_user_id=RudderEncrypt%3AU2FsdGVkX1%2FB9dm%2BQuQ9vm3r%2FF9pKUAEcTllH7LKwR8%3D; rl_anonymous_id=RudderEncrypt%3AU2FsdGVkX1%2BURNl%2FSY%2BpmeZ1t5%2BJDxWgSp4k1vxUsmJhZz8w%2FiDyx9ZO6BQUwqGUJF0UnXgWMHVaiST4fIaCRw%3D%3D; rl_group_id=RudderEncrypt%3AU2FsdGVkX19FhnmWUzpYhHh1OgPdWSxWXRhkTrN2728%3D; rl_trait=RudderEncrypt%3AU2FsdGVkX185yjgUPvAyCRcNimdZUYnyTdsrR6K4tdY%3D; rl_group_trait=RudderEncrypt%3AU2FsdGVkX19QYYhXNYWrrGxc7DaWaEnLAaJc9d4oK0Y%3D; OptanonConsent=isIABGlobal=false&datestamp=Thu+May+19+2022+22%3A58%3A38+GMT%2B0530+(India+Standard+Time)&version=6.6.0&hosts=&consentId=ee6583b8-29ca-42af-86d4-4d4b7bcd5b1d&interactionCount=1&landingPath=NotLandingPage&groups=C0001%3A1%2CC0002%3A1%2CC0004%3A1%2CC0003%3A1%2CSPD_BG%3A1&AwaitingReconsent=false; forterToken=9c25c5f548ad4b65b324e2d5ca693810_1652981318259__UDF43_6; _ga_DC72C50JN6=GS1.1.1652981317.7.1.1652981319.58; _ga=GA1.2.2126808309.1652115888; utag_main=v_id:0180a9c7d91d008116ac592bb2f005073004006b007e8$_sn:5$_se:2$_ss:0$_st:1652983122495$ses_id:1652981321786%3Bexp-session$_pn:1%3Bexp-session; Referral=CLICKID=&WEBENTRYTIME=5%2F19%2F2022%2017%3A28%3A39&ID=DIRECT&PRODUCTID=&SOURCEID=DT; _px2=eyJ1IjoiMWU5OGM3ZTAtZDc5OS0xMWVjLTgwYzMtNDU0OTAyMjI3ZjU3IiwidiI6IjE0ODY2OGE3LWNmYmEtMTFlYy1hNTllLTU2NjU2NjU4NGY2ZCIsInQiOjE2NTI5ODIwODM1MDcsImgiOiIyNjJjY2Q0NzhjMDExZmUwNGM2M2RhOTYyMGVhN2IwN2RlNzM0NDdhZWM1MDcyNjQyNjc1NmUwOWMxMjhhYTY4In0=; _pxde=dbb00993b7e47c317964917bc132c31ed7dc412d28afe0752c56b75de6622c92:eyJ0aW1lc3RhbXAiOjE2NTI5ODE3ODM1MDcsImZfa2IiOjB9; pclnguidse=4a916fdafde1b10d6a639a0569ac9929329cacfc; pclnguidpe=4a916fdafde1b10d6a639a0569ac9929329cacfc",
"Origin": "https://www.priceline.com",
"Referer": "https://www.priceline.com/relax/in/3000015284/from/20220519/to/20220520/rooms/1/adults/2?vrid=5a48c5528fa1aab89b39653be894a9fe",
"sec-ch-ua": '" Not A;Brand";v="99", "Chromium";v="101", "Google Chrome";v="101"',
"sec-ch-ua-mobile": "?0",
"sec-ch-ua-platform": '"Windows"',
"sec-fetch-dest": "empty",
"sec-fetch-mode": "cors",
"sec-fetch-site": "same-origin",
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.67 Safari/537.36",
}



payloader = {
    "query": "query getAllListings($addErrToResponse: Boolean, $adults: Int, $allInclusive: Boolean, $amenities: [String], $appCode: HotelAppCodeEnum, $authToken: ID, $bedCounts: [BedCount], $brands: [ID], $cguid: ID, $checkIn: DateString, $checkOut: DateString, $children: [String], $clientIP: String, $clusters: [ID], $cugdor: String, $currencyCode: HotelCurrencyEnum, $dealTypes: [String], $first: Int, $hotelName: String, $includePSLResponse: Boolean, $includePrepaidFeeRates: Boolean, $locationID: ID, $maxPrice: Float, $metaHotelId: ID, $metaID: String, $minGuestRating: Float, $minPrice: Float, $multiOccDisplay: Boolean, $multiOccRates: Boolean, $offset: Int, $pageName: String, $popcountMins: Int, $preferredHotels: [ID], $productTypes: [HotelProductEnum], $propertyTypeIds: String, $rID: ID, $rateFilterParams: [String], $rateID: ID, $refClickID: String, $refURL: String, $rguid: ID, $roomCount: Int, $semSearch: String, $sortBy: HotelSortEnum, $starRatings: [StarRating], $unlockDeals: Boolean, $userCountryCode: String, $vipDeals: Boolean, $visitId: String, $packageListingsSearchQuery: HotelUnifiedSearchArguments, $cityID: ID, $latitude: Float, $locationName: String, $longitude: Float, $maxLat: Float, $maxLon: Float, $minLat: Float, $minLon: Float, $plfCode: String, $useContentDataSeti: Boolean) {\n  listings: hotelListings(addErrToResponse: $addErrToResponse, adults: $adults, allInclusive: $allInclusive, amenities: $amenities, appCode: $appCode, authToken: $authToken, bedCounts: $bedCounts, brands: $brands, cguid: $cguid, checkIn: $checkIn, checkOut: $checkOut, children: $children, clientIP: $clientIP, clusters: $clusters, cugdor: $cugdor, currencyCode: $currencyCode, dealTypes: $dealTypes, first: $first, hotelName: $hotelName, includePSLResponse: $includePSLResponse, includePrepaidFeeRates: $includePrepaidFeeRates, maxPrice: $maxPrice, metaHotelId: $metaHotelId, metaID: $metaID, minGuestRating: $minGuestRating, minPrice: $minPrice, multiOccDisplay: $multiOccDisplay, multiOccRates: $multiOccRates, offset: $offset, pageName: $pageName, popcountMins: $popcountMins, preferredHotels: $preferredHotels, productTypes: $productTypes, propertyTypeIds: $propertyTypeIds, rID: $rID, rateFilterParams: $rateFilterParams, rateID: $rateID, refClickID: $refClickID, refURL: $refURL, rguid: $rguid, roomCount: $roomCount, semSearch: $semSearch, sortBy: $sortBy, starRatings: $starRatings, unlockDeals: $unlockDeals, userCountryCode: $userCountryCode, vipDeals: $vipDeals, visitId: $visitId, packageListingsSearchQuery: $packageListingsSearchQuery, cityID: $cityID, latitude: $latitude, locationID: $locationID, locationName: $locationName, longitude: $longitude, maxLat: $maxLat, maxLon: $maxLon, minLat: $minLat, minLon: $minLon, plfCode: $plfCode, useContentDataSeti: $useContentDataSeti) {\n    packageComponentSummary\n    packageTripTypes\n    numberOfTravelers\n    totalPackagePricingText {\n      packagePrice\n      perText\n      __typename\n    }\n    rguid\n    errorMessage\n    offset\n    pageSize\n    totalSize\n    sortType\n    hotels {\n      isMostFavorited\n      debugString\n      debugHotelInfo\n      hotelId\n      pclnId\n      retailPclnId\n      brandId\n      name\n      description\n      displaySavingsPct\n      displaySavingsDisclaimer\n      displayRoomsLeft\n      overallGuestRating\n      proximity\n      signInDealsAvailable\n      signInDealsMinRate\n      propertyTypeId\n      keyFeatures\n      location {\n        address {\n          addressLine1\n          addressLine2\n          cityName\n          provinceCode\n          isoCountryCode\n          __typename\n        }\n        cityId\n        neighborhoodName\n        neighborhoodID\n        neighborhoodDescription\n        latitude\n        longitude\n        zoneId\n        __typename\n      }\n      metaSearch {\n        priceChangeCode\n        pclnPrice\n        clickedPrice\n        currency\n        __typename\n      }\n      hotelFeatures {\n        rankedAmenityList\n        highlightedAmenities\n        breakfastDetails\n        __typename\n      }\n      hotelType\n      ratesSummary {\n        displayPricePerStay\n        displaySavingsStrikePrice\n        gid\n        programName\n        payWhenYouStayAvailable\n        freeCancelableRateAvail\n        couponApplicable\n        minRateSavingsPercentage\n        minCurrencyCodeSymbol\n        merchandisingFlag\n        roomLeft\n        minPrice\n        minStrikePrice\n        minCurrencyCode\n        savingsClaimPercentage\n        savingsPct\n        savingsAmount\n        preferredRateId\n        pricedOccupancy\n        rateIdentifier\n        perText\n        minRatePromos {\n          type\n          title\n          discountType\n          discountPercentage\n          displayStrikethroughPrice\n          displayStrikethroughPriceCurrency\n          isVariableMarkupPromo\n          showDiscount\n          dealType\n          __typename\n        }\n        packageTripSummary {\n          displayPricePerPerson\n          name\n          type\n          __typename\n        }\n        incrementalSign\n        __typename\n      }\n      sponsoredInfo {\n        clickTrackingUrl\n        impressionTrackingUrl\n        details\n        detailsHeadline\n        trackingData\n        __typename\n      }\n      recmdScore\n      totalReviewCount\n      metaId\n      mobileMerchandisingContent {\n        color\n        text\n        bold\n        __typename\n      }\n      thumbnailUrl\n      images {\n        imageHDUrl\n        imageUrl\n        description\n        __typename\n      }\n      starRating\n      displayRoomsLeft\n      displayStrikePrice\n      cugProgramName\n      channelName\n      programDisplayType\n      partialUnlock\n      sopqImageKey\n      sopqDealName\n      bedChoiceAvailable\n      amenitiesIcons {\n        iconName\n        amenityName\n        __typename\n      }\n      packageListingKeys {\n        itemDetailsKey\n        itemKey\n        componentKey\n        componentIndex\n        flyItemKey\n        __typename\n      }\n      __typename\n    }\n    tripFilterSummary {\n      amenityCounts\n      availableBrands {\n        brandID\n        name\n        count\n        __typename\n      }\n      avgFilterPrice\n      bedCountFilterCounts\n      clusterCounts\n      dealTypeCounts\n      groupedPropertyTypes {\n        name\n        propertyTypeIds\n        count\n        __typename\n      }\n      guestRatingPlusCounts\n      maxFilterPrice\n      minFilterPrice\n      rateFilterCounts\n      similarZones\n      starRatingCounts\n      totalSizeFiltered\n      totalVipHotelCount\n      __typename\n    }\n    programNames\n    cityInfo {\n      stateCode\n      stateName\n      cityName\n      countryCode\n      countryName\n      cityId\n      displayCityName\n      lat\n      lon\n      superClusterInfo {\n        superClusterId\n        superClusterName\n        subclusterList {\n          subclusterId\n          subclusterName\n          __typename\n        }\n        __typename\n      }\n      searchedItemName\n      searchedLatitude\n      searchedLocationType\n      searchedLongitude\n      zonePolygonInfo\n      __typename\n    }\n    signInDealRelatedInfo {\n      numberOfAvailableSignInDeals\n      numberOfDisclosedSignInDeals\n      promptUserToSignIn\n      __typename\n    }\n    packageMissingProductBannerCopy\n    componentKeyMapFromUSP {\n      type\n      componentKey\n      index\n      __typename\n    }\n    sessionKeyfromUSP\n    __typename\n  }\n}\n",
    "variables": {
        "locationID": "3000015284",
        "sortBy": "HDR",
        "visitId": "202205191433486302a5fb-RRLXGQD",
        "addErrToResponse": True,
        "checkIn": "20220519",
        "checkOut": "20220520",
        "clientIP": "157.34.151.76",
        "adults": 2,
        "dealTypes": "",
        "roomCount": 1,
        "productTypes": [
            "RTL",
            "SOPQ"
        ],
        "rID": "DTDIRECT",
        "currencyCode": "USD",
        "cguid": "349a89dc15301f3eec2d833947878b34",
        "includePrepaidFeeRates": True,
        "unlockDeals": True,
        "includePSLResponse": True,
        "offset": 0,
        "first": 30,
        "appCode": "DESKTOP",
        "allInclusive": False,
        "vipDeals": False,
        "useContentDataSeti": True,
        "requestedHotelIds": None,
    },
    "operationName": "getAllListings"
}

res  = requests.post(url=URL , data=payloader)
print(res.status_code)

in payload True , False, None I added but it was originally true , false and null which was giving errors



Solution 1:[1]

I not sure but test this code:

std::hash<std::uint32_t> hasher;
uint32_t num_B = 1+ hasher(num_A) % 1022;

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 Alireza Borzuie