demo2.py 2.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. import requests
  2. headers = {
  3. "accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7",
  4. "accept-language": "zh-CN,zh;q=0.9",
  5. "cache-control": "no-cache",
  6. "pragma": "no-cache",
  7. "priority": "u=0, i",
  8. "referer": "https://booking.jetstar.com/",
  9. "sec-ch-ua": "\"Not(A:Brand\";v=\"99\", \"Google Chrome\";v=\"133\", \"Chromium\";v=\"133\"",
  10. "sec-ch-ua-mobile": "?0",
  11. "sec-ch-ua-platform": "\"Windows\"",
  12. "sec-fetch-dest": "document",
  13. "sec-fetch-mode": "navigate",
  14. "sec-fetch-site": "same-origin",
  15. "sec-fetch-user": "?1",
  16. "upgrade-insecure-requests": "1",
  17. "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36"
  18. }
  19. url = "https://booking.jetstar.com/hk/zh/booking/search-flights"
  20. params = {
  21. "s": "true",
  22. "adults": "1",
  23. "children": "0",
  24. "infants": "0",
  25. "selectedclass1": "economy",
  26. "currency": "CNY",
  27. "mon": "true",
  28. "channel": "DESKTOP",
  29. "origin1": "PVG",
  30. "destination1": "KMJ",
  31. "departuredate1": "2025-05-12"
  32. }
  33. ip = '000000000024'
  34. proxies = {
  35. 'http': f'http://B_3351_HK___5_ss-{ip}:ev2pjj@proxy.renlaer.com:7778',
  36. 'https': f'http://B_3351_HK___5_ss-{ip}:ev2pjj@proxy.renlaer.com:7778'
  37. }
  38. cookies = {
  39. # "ASP.NET_SessionId": "fs0akgjdzhdbwjdlk1345egb",
  40. # "SEFD": "eyJPcmlnaW4iOiJQVkciLCJEZXN0aW5hdGlvbiI6IlFTVSIsIlJvdW5kVHJpcCI6ZmFsc2UsIkRlcGFydHVyZURhdGUiOiIyMDI1LTA2LTEyVDAwOjAwOjAwIiwiUmV0dXJuRGF0ZSI6IjAwMDEtMDEtMDFUMDA6MDA6MDAiLCJBZHVsdHMiOjEsIkNoaWxkcmVuIjowLCJJbmZhbnRzIjowfQ==",
  41. # "bm_sz": "1AF44A3B342C0D65F7FE487CEE4B582B~YAAQuqzbFxUlkUqWAQAA0aJOehsVzB0waQURNtQG+ozage9BslR5TVlORc0702ZswDMt5mhWFgT5YZcpMATNFJuEtK4l2IEjzc6A5qCfBaZHiYSbw/2wDEopU/xGH2mKKOyAArvP/Ui9bk4tpjBbOKE6KvMwzsmAs/0dO5Q40Py1YrDeJpFJlsQ+OTAEbdm1hl28uuzi118b02DSCtc9tG1pPFcs/x9BXVid1nILwcsg1XZf3s3basCdvkjUImUxxp71atqcVRr1Ho8s2NFzEFOj2hqhkNV4j4+Gumrgiyru7TQvn37BeRLqb3W8RIMhnQiC6FrUBlKLkdpdfVvBuhCTxX164Efg8PNLJudApfmrSW4t+3dZmng=~4277552~4277555",
  42. "bm_sz": "1AF44A3B342C0D65F7FE487CEE4B582B~YAAQuqzbFxUlkUqWAQAA0aJOehsVzB0waQURNtQG+ozage9BslR5TVlORc0702ZswDMt5mhWFgT5YZcpMATNFJuEtK4l2IEjzc6A5qCfBaZHiYSbw/2wDEopU/xGH2mKKOyAArvP/Ui9bk4tpjBbOKE6KvMwzsmAs/0dO5Q40Py1YrDeJpFJlsQ+OTAEbdm1hl28uuzi118b02DSCtc9tG1pPFcs/x9BXVid1nILwcsg1XZf3s3basCdvkjUImUxxp71atqcVRr1Ho8s2NFzEFOj2hqhkNV4j4+Gumrgiyru7TQvn37BeRLqb3W8RIMhnQiC6FrUBlKLkdpdfVvBuhCTxX164Efg8PNLJudApfmrSW4t+3dZmng=~4277552~4277555",
  43. }
  44. response = requests.get(url, headers=headers, cookies=cookies, params=params,
  45. # proxies=proxies,
  46. timeout=15)
  47. print(response.text)
  48. print(response.cookies.get_dict().get('SEFD'))
  49. print(response)
  50. from lxml import etree
  51. import json
  52. html = etree.HTML(response.text)
  53. data = html.xpath("//script[@id='bundle-data-v2']/text()")[0]
  54. json_data = json.loads(data)
  55. print(json_data)
  56. # akm文件名称 2hOd3M