请帮帮忙。我正在使用刮刀绕过云耀斑。开发实时数据解析器的任务,卡在请求阶段...:(
`
headers = {
"accept": "*/*",
"accept-encoding": "gzip, deflate, br",
"accept-language": "ru-RU,ru;q=0.9,en-GB;q=0.8,en;q=0.7,en-US;q=0.6",
"cf-device-type": "",
"content-length": "3315",
"content-type": "application/json",
"cookie": "session_info=undefined; currency_currency=btc; currency_hideZeroBalances=false; currency_currencyView=crypto; currency_bankingCurrencies=[]; casinoSearch=['Monopoly','Crazy Time','Sweet Bonanza','Money Train','Reactoonz']; sportsSearch=['Liverpool FC','Kansas City Chiefs','Los Angeles Lakers','FC Barcelona','FC Bayern Munich']; oddsFormat=decimal; sportMarketGroupMap={}; locale=ru; intercom-id-cx1ywgf2=86f79ef7-ca71-4205-8f41-b73b0b559b2e; intercom-session-cx1ywgf2=; cookie_consent=true; leftSidebarView_v2=minimized; sidebarView=hidden; cf_clearance=6420a111bb498d49b56800690b298b7bba53e91d-1667643880-0-150; __cf_bm=cj_pRlIaag.zmXOLQPWJ0GEip_W3NuRcjBa.OlOvIzU-1667643883-0-Ad3+LGxBsAD+n4k5G6mVTfRhfqAthNtU9O9VY4MicOoFQ82/DvoS6h44JXKfexV2niXlGcEBTEMB9VUOYiNbr/2tr1EidvV2unVIk7hyX8cYAcc0btV2eZv1yvPZEcGumjKYXvKuFJOx/vPpi53NXizPc8apm56HvNxb9SkKULIy",
"dnt": "1",
"origin": "https://stake.com",
"referer": "https://stake.com/sports/home",
"sec-ch-ua": "'Google Chrome';v='107', 'Chromium';v='107', 'Not=A?Brand';v='24'",
"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/107.0.0.0 Safari/537.36",
"x-forwarded-for": "88.99.58.45, 162.158.38.53, 172.20.242.28",
"x-geoip-country": "DE",
"x-geoip-state": "",
"x-language": "ru"
}
body = """
query highrollerSportBets($limit: Int!) {
highrollerSportBets(limit: $limit) {
...RealtimeSportBet
__typename
}
}
fragment RealtimeSportBet on Bet {
id
iid
bet {
__typename
... on PlayerPropBet {
...PlayerPropBetFragment
__typename
}
... on SportBet {
outcomes {
fixture {
data {
__typename
... on SportFixtureDataMatch {
competitors {
name
abbreviation
__typename
}
__typename
}
}
tournament {
category {
sport {
slug
__typename
}
__typename
}
__typename
}
__typename
}
__typename
}
createdAt
potentialMultiplier
amount
currency
user {
id
name
__typename
}
__typename
}
}
}
fragment PlayerPropBetFragment on PlayerPropBet {
__typename
active
amount
cashoutMultiplier
createdAt
currency
customBet
id
odds
payout
payoutMultiplier
updatedAt
status
user {
id
name
__typename
}
playerProps {
id
odds
lineType
playerProp {
...PlayerPropLineFragment
__typename
}
__typename
}
}
fragment PlayerPropLineFragment on PlayerPropLine {
id
line
over
under
suspended
balanced
name
player {
id
name
__typename
}
market {
id
stat {
name
value
__typename
}
game {
id
fixture {
id
name
status
eventStatus {
...FixtureEventStatus
__typename
}
data {
... on SportFixtureDataMatch {
__typename
startTime
competitors {
...CompetitorFragment
__typename
}
}
__typename
}
tournament {
id
category {
id
sport {
id
name
slug
__typename
}
__typename
}
__typename
}
__typename
}
__typename
}
__typename
}
}
fragment FixtureEventStatus on SportFixtureEventStatus {
homeScore
awayScore
matchStatus
clock {
matchTime
remainingTime
__typename
}
periodScores {
homeScore
awayScore
matchStatus
__typename
}
currentServer {
extId
__typename
}
homeGameScore
awayGameScore
statistic {
yellowCards {
away
home
__typename
}
redCards {
away
home
__typename
}
corners {
home
away
__typename
}
__typename
}
}
fragment CompetitorFragment on SportFixtureCompetitor {
name
extId
countryCode
abbreviation
}
"""
operationName = "highrollerSportBets"
variables = {"limit":10}
url = 'https://stake.com/_api/graphql'
sa_key = '280a2b7336344a8ea15106dd3220cc5a'
sa_api = 'https://api.scrapingant.com/v2/general'
qParams = {'url': url, 'x-api-key': sa_key}
reqUrl = f'{sa_api}?{urllib.parse.urlencode(qParams)}'
r = requests.post(url=reqUrl, json={"query": body, "operationName": operationName, "variables": variables}, headers=headers)
print(r.text)
`
输出量
POST主体缺失、内容类型无效或JSON对象没有键。
请告诉我,我在哪里犯了错误?也许有一些类似任务的库?
我正在使用VPN。必须传递cookie
2条答案
按热度按时间fnvucqvd1#
注意:切勿发布任何API密钥
我可以运行你的代码没有错误。
执行
vwoqyblh2#
我也是一个Stake.com玩家,我每天都使用API(和VPN)来自动化一些下注。
要绕过cloudflare,您只需要获取一个名为“cf_clearance”的cookie,然后使用它请求。