Commit 5dedee0f authored by wang's avatar wang

验票

parent fa94a679
...@@ -40,10 +40,10 @@ headers = { ...@@ -40,10 +40,10 @@ headers = {
url = "https://www.nordstrom.com/giftcards" url = "https://www.nordstrom.com/giftcards"
headers.update( headers.update(
{"x-y8s6k3db-f": "A_f2vH2NAQAAgwafvJw-cEZM_WtlvylCzxl1TbEW7q6DmsFQHpIWMTD3qkweAReeaPiucuKDwH9eCOfvosJeCA==", {"x-y8s6k3db-f": "A_f2vH2NAQAAgwafvJw-cEZM_WtlvylCzxl1TbEW7q6DmsFQHpIWMTD3qkweAReeaPiucuKDwH9eCOfvosJeCA==",
"x-y8s6k3db-b": "-m4g212", "x-y8s6k3db-c": "AIBGpX2NAQAA0vPrw7StzmeA1dHgsOsvkto5ehlCkejfG5hMVSr3l4Dx2_GF", "x-y8s6k3db-b": "o89hfc", "x-y8s6k3db-c": "AIBGpX2NAQAA0vPrw7StzmeA1dHgsOsvkto5ehlCkejfG5hMVSr3l4Dx2_GF",
"x-y8s6k3db-d": "ABaAhIDBCKGFgQGAAYIQgISigaIAwBGAzv5Czi_33wcq95eA8dvxhQAAAAASUms1AJdoUdEuKhew80AHhC2pNEQ", "x-y8s6k3db-d": "ABaAhIDBCKGFgQGAAYIQgISigaIAwBGAzv5Czi_33wcq95eA8dvxhQAAAAASUms1AJdoUdEuKhew80AHhC2pNEQ",
"x-y8s6k3db-z": "q", "x-y8s6k3db-z": "q",
"x-y8s6k3db-a": "Uu8BRAX=4eTE=yQqzg0sNL5vls6Gv6Q9_bgUFTGsxzZwUfGOkX6Ogj8hygFaPlsP=gM9kC7X77e4eaXV-BFd0SVaXuBBNGgz63EAM3keCt9fAczBEb0=2fvfr5Tdd5uC2R5LagrCVf3D7S04nod7jZ3Biure6jN20DLF=SV80VNwI9mbf1orxj18ma1JQ4uCPggciyNK5PBwbH99KqDhR=cmj9WzUCAG3BfNS3eMDSU_FaHMdknJASOaWJBIOthi0-cOE9XGFn92I5D1FH9BWMTv1NwTvlXRPxlQdlj7LmqXkk6NHORds5QEzisZhLdhcQJVaa4s7K2ZQ2yiNQLlQjn06K5-oCwDcN=f7ezUZMQG6Te-TVdTHemntqah=LL1ItDC7PKtzie-3Qv5s=idI84AnPVuHPr5jr3hM4qqjR7O1TCXXSeOgKxmJN5JFcSdqcnLUnlsgMTBefcjfFQCmmEjDnNn62H9KNyQ6nR0abwslM=LBmXOx6rVslvqUt0XO=XcYAQiGvqEqyDHvranINoPQ0I9i39baah27_i0OaXV7xlKY3CMigeFKylb_BSowW085DfKgjyHg4=8T2MJFyFuH9QvynfqHZHBjKUQzNU1bwCUHur6EPKVGrQISrfO_MPhdG=ffSrJgrQO85RAWfDhHFDuFuXfmg44B8=81AirXn9556o=WSZAWUQOXOdjINtDjD=SOk=4Y-q4P4-NlHKnPEmU=UxcZE5y_JsqTS5XHMKMbP6mLdQY4cIfjrwni03nVbl4g17chPOHO_YUGjFiC2kJmAajx2HMa8SoAH4j3HiC7eNyX4QsdrPl=NhMZ1-FaDLZbuYjHZ0gPCkHXROAqWmq2vczUvXnaz89rgkrGiYdNVJYwoBIREOmisb0xnIyikLGtsDKG2VSJh54EXwQvz9Sxhc6ztmN0sJWRJVoi2z=jmGyNsnAye5726CfrSVJA0=_yDU29BWeraNWjXsWMRU3Drkty6HQcWAzLKctSqQwNuC8fkQkAyieMmzRHc95IuGoWJDKyMv_T3GwvdFm5zHE6hUaYIf5nk_MenRegLmr3tRkUxXvYHIHVqucWCCqH-tJjf02X03h1QUyn006uAuKatXMUb815Z9YSS_aJkEC1od42dWIYFJkqCQ8KuoEnxifFZMjx9_hyO4EODqDE1QdMm8o5X6sdhmW_kraGqnj66Gl__DL5DTlYQKnBo1=Tx00LPV3cVZ0hcWQ_ZgO6oN4gl4W64JrziqdEQSbUCYZelJ4vMXNeNsxhtQGaMRWolN90m4gfZyU6APzqEyS_EVPuil=n3EYi43NrmAQ2nLo1AQIjr_uCJE7DMkLVyWoWd8EDqfO1_kDaqhtDctVg2AxZFO3sNoSJ6WybmS_55UlUCRs3xuHUbuAU=iQ7H0zsqUh7yjfMT48kzjKjLQsbVLRSdMlOIBKc5-ho5m_PMlBYEZyq5=9kubRSdjS-Nf9n-oE0VgEJNFSVhrY0nSrTKt=SzlvryUZXk3r6L6RewLTAnhQ4J-aLFly534KX2xVY6_N5ucIhvQvmtvtVs33PEDREa2O5ArmZfeFYwvyf49sSOhdLkDYY1EFFHvw_FJoiFMi_50qraheS3YI_i7VHeDxFNdtSV6XMHD3oaj3CeD34H9AR9uJ9SoNcTv-jOWfnc4vn1w=k01uxxf3MmPTh6CayjaJxXwmLvhbcMaFbPnomz9st3G7TkY2AtAf_YFUMXeuLCVbs5L8qLTRn9oeWoruM5I7SQ10W-=jkRRBrmsn2fgMtIoN7K2iS_qAiClbT_4H3wT0ewSaVE=67GGBYmxG0Sg7Ji12ZGR1lD7L4sUO2qsuL7qlHl-2q6MRzw7sweNUElEuq8memRq_bXD5uoSBdTNqcGClRtrJ8h6WbAcR6M7sG5VZfSF70BfsClBbjDzs=XJGeUBDjdZErfuSIGNYSgqrRgDU=n_Vw59Hiv7E1IB7kA_Zyygnkjf5Hohw7TTFs=UfZ5wRhnUV6LIe333=4FX0MhilF6qJxv=sd0uVjM=kEgYfswZUfcwjcCcbxRJZsDYitnXQZnqr3VcgR8M2TKR1AJyhbmC1sb4ZKH3oOhhXqXxJfXXHZCMKCdlXJYmk8e-_AwkzRJmFjWSV__2YNMGNDAWVn=j1iEWuUbbM11Lr8y3Xd7Loq0d39-sj5TwOKt9l3QU2o1ovCHVloga0KCZg7uMewmDeqiOeZGY2R0zBkAbdRHT_cPiXDBSqhmK5172FoSu54So4wGGtQSzga2xDNNeLMDi7A4gEI786VEx0CKbNYxlDbDsb_CZY41U8isQ99UYk9S1SyCTC-M90uR5m9kk=QfofkczMUQ2LuS=KUqUrvxrI2ihUg5ZATorfrc=jBtPy9nidzEaS81LCe9A2iuGerRDALhquSQZg4jiCRgmM9syQv5iWMq1Mrgb5K1Ar4Ajcw51o773ArdsbztOEQqROsKWYYS=mNuDxGug3UM4r3uXIs9zrb4obX-SXz0c=wROBVKec72mcTABHP_OwyHoyN2GvIoZ5TUcmD42aBmxwNY1xWFtKnorr_xoJXeqlU6UM_nw6AlqNI7Mucm6N=OagYMvtZRQqNjm5B3hN=nyYcSxdojhUCD-lF5G=4wShmah5_LE0-NPbdbe7WJmP8SPvo_79ArqqKbRhEs5dgMcPwcFo0P6V3S9sV8Y69dgsr9cYlws_R_5dg16n=KKUzKKgAlrFkAuaK0F_88FPA2VnQbQedhhygeLbDI7e=f91fROO9iBVES0x-ece=ww1lyTE5HSYh3w=J_Bj0DayK8zkFkEUomE6fX3qeaVX5VCO1lVNKcMd8yvRfxZ8It2LtWbLgT3MOD4jXebArDnXK_bHq12OE5GX5S9BDPR77Xdu03vvWkxuAUBmFSPhPFeKt6gmPOF8diXUQjS=OIv6JoETZWawQn2w=2=CehQn8-RySy0C4gWtDWCWyAIkwTSGJaQ38BGhbaDGTw5Q8CDK9fsIVLObn2RX1ajsR7Py-Iq4g2irWYW72v6AdhI4f4RLNZM7KTYdbge=lUEzTVN96Xn1VVq=nT5B_8y4ayqXFMh_8TqsEJHRzCuHJqwo99yflQ5yNrQNi3uLrQZPo7uxWNLCIrttjzaCDqqv=Q8b84h_2XwwVOy_7euXn_lMDyMQ9Z9cqbSou0bbK_J52acu9-YrLHRRhELRawlVT-eCtbgzB5lxHkfhsrkmXr2aAfZx3nGoIRz9i5FjQhonwmaAXwv2ek0ioPr7tUrhUv-P_qHki4ksch=6Pa=BscZKxX36dtegM=Q0A2WbTiMYyHhSP289fFaMbn=beIAweyR9hYL=J8WxjIt2UMeLbqHJhS4fa4keyTjTT39d61szOC-0k=l2L8LBWwubb1Z3ahziUTl6LAjxr58KQnQMwm2ZADI88x3vCWfe_NSaeZMq3=A31BVz9YHwmjoUKCKObJJrj2X2bi4V_xaIg5FzUxysR_8FVEIsM2utLfHifSzt57D-THRYYeVNSI08h9mgRH1saBOA9outfgg1MuxS6X1cEzUAYmy8Tc-QT3dtQ0g=6RcqbRwRHc06EWuDndtlNKv59PQ8MgeTyRwkEXisu0rKHHgOVd3C6tzjD6bq_jiIFmv255xvk61wevI3V4ZVto8I04SXggJu6JI=sK-qfEH2a0wOV2TMr_9v43xxtruEwT_iPAyPJX2Wa4XLq6Fu-CLqH5Jelb=CmwYGGsu=fky9cegjmfvuOC6WaB=m5wq2wRW6zZIKwric9=oA6Qga3NMXM1enOTQ4dBE_a-xE9nHRO2S6L03Yy96A9DMjCYxJgFSfEi0gCXDIAL0Neh8I68lJk0c6sJwHQ0wzl2eJPJ8ASEiOewWEJfarBDfH1hNwogogPLDh7NrO3OtUP=M=Q98X0Z7iLvY5B=SDC48-ReHnFQUN_sWJlfTcuYMRwbvTr_mrFu1vYO-98=8t2bAqrTWNq15Voyo5FHHUJsNjAbQKe05CJR4XbIuwymjY8VkONk6XzDlOnwfay9AGGnC66IhtfAEJmDPuk7Ac__RwJcwuZsZL599LUWn=re_iz29_1x=IUaZ6ifYGyQzKtCTJHexBTbTO9_M3vlw3bcoeirCq0MlKvh7dbafumi3gNJSH5MXaVFOwBJ4dKbghxH8VC_0bPctKj0ln9ONTmfLRthUEG1mMPE20=cjtmNdUqrTiEbM5SZyMMMur5Vo8n51ZR9q89tzNsBGiAYZaV55H=HHH78Bc0o4HACNFZ5I4zbyuJfw-o=U2KNqv28-St8I17b2F2MUeFEZCuM60qsFFTJOqzMPOiQEGP_0eqsHd-AnvUGVnFBtY2zGXJU6vnFR7HFJhyTYc8AU-DVW7uLkyuJhseZAyPFD-4-rGcJO1543FA_81MXOtRm9FYyVJRAgGKJtOECQdI0nHBVsvGVA6y2dtIc0Beg8mb1fnxwIbBX1Lb0Fa0r-c0eWw1vu2z6oz7V", "x-y8s6k3db-a": "Uu8BRAX=4eTE=yQqzg0sNL5vls6Gv6Q9_bgUFTGsxzZwUfGOkX6Ogj8hygFaPlsP=gM9kC7X77e4eaXV-BFd0SVaXuBBNGgz63EAM3keCt9fAczBEb0=2fvfr5Tdd5uC2R5LagrCVf3D7S04nod7jZ3Biure6jN20DLF=SV80VNwI9mbf1orxj18ma1JQ4uCPggciyNK5PBwbH99KqDhR=cmj9WzUCAG3BfNS3eMDSU_FaHMdknJASOaWJBIOthi0-cOE9XGFn92I5D1FH9BWMTv1NwTvlXRPxlQdlj7LmqXkk6NHORds5QEzisZhLdhcQJVaa4s7K2ZQ2yiNQLlQjn06K5-oCwDcN=f7ezUZMQG6Te-TVdTHemntqah=LL1ItDC7PKtzie-3Qv5s=idI84AnPVuHPr5jr3hM4qqjR7O1TCXXSeOgKxmJN5JFcSdqcnLUnlsgMTBefcjfFQCmmEjDnNn62H9KNyQ6nR0abwslM=LBmXOx6rVslvqUt0XO=XcYAQiGvqEqyDHvranINoPQ0I9i39baah27_i0OaXV7xlKY3CMigeFKylb_BSowW085DfKgjyHg4=8T2MJFyFuH9QvynfqHZHBjKUQzNU1bwCUHur6EPKVGrQISrfO_MPhdG=ffSrJgrQO85RAWfDhHFDuFuXfmg44B8=81AirXn9556o=WSZAWUQOXOdjINtDjD=SOk=4Y-q4P4-NlHKnPEmU=UxcZE5y_JsqTS5XHMKMbP6mLdQY4cIfjrwni03nVbl4g17chPOHO_YUGjFiC2kJmAajx2HMa8SoAH4j3HiC7eNyX4QsdrPl=NhMZ1-FaDLZbuYjHZ0gPCkHXROAqWmq2vczUvXnaz89rgkrGiYdNVJYwoBIREOmisb0xnIyikLGtsDKG2VSJh54EXwQvz9Sxhc6ztmN0sJWRJVoi2z=jmGyNsnAye5726CfrSVJA0=_yDU29BWeraNWjXsWMRU3Drkty6HQcWAzLKctSqQwNuC8fkQkAyieMmzRHc95IuGoWJDKyMv_T3GwvdFm5zHE6hUaYIf5nk_MenRegLmr3tRkUxXvYHIHVqucWCCqH-tJjf02X03h1QUyn006uAuKatXMUb815Z9YSS_aJkEC1od42dWIYFJkqCQ8KuoEnxifFZMjx9_hyO4EODqDE1QdMm8o5X6sdhmW_kraGqnj66Gl__DL5DTlYQKnBo1=Tx00LPV3cVZ0hcWQ_ZgO6oN4gl4W64JrziqdEQSbUCYZelJ4vMXNeNsxhtQGaMRWolN90m4gfZyU6APzqEyS_EVPuil=n3EYi43NrmAQ2nLo1AQIjr_uCJE7DMkLVyWoWd8EDqfO1_kDaqhtDctVg2AxZFO3sNoSJ6WybmS_55UlUCRs3xuHUbuAU=iQ7H0zsqUh7yjfMT48kzjKjLQsbVLRSdMlOIBKc5-ho5m_PMlBYEZyq5=9kubRSdjS-Nf9n-oE0VgEJNFSVhrY0nSrTKt=SzlvryUZXk3r6L6RewLTAnhQ4J-aLFly534KX2xVY6_N5ucIhvQvmtvtVs33PEDREa2O5ArmZfeFYwvyf49sSOhdLkDYY1EFFHvw_FJoiFMi_50qraheS3YI_i7VHeDxFNdtSV6XMHD3oaj3CeD34H9AR9uJ9SoNcTv-jOWfnc4vn1w=k01uxxf3MmPTh6CayjaJxXwmLvhbcMaFbPnomz9st3G7TkY2AtAf_YFUMXeuLCVbs5L8qLTRn9oeWoruM5I7SQ10W-=jkRRBrmsn2fgMtIoN7K2iS_qAiClbT_4H3wT0ewSaVE=67GGBYmxG0Sg7Ji12ZGR1lD7L4sUO2qsuL7qlHl-2q6MRzw7sweNUElEuq8memRq_bXD5uoSBdTNqcGClRtrJ8h6WbAcR6M7sG5VZfSF70BfsClBbjDzs=XJGeUBDjdZErfuSIGNYSgqrRgDU=n_Vw59Hiv7E1IB7kA_Zyygnkjf5Hohw7TTFs=UfZ5wRhnUV6LIe333=4FX0MhilF6qJxv=sd0uVjM=kEgYfswZUfcwjcCcbxRJZsDYitnXQZnqr3VcgR8M2TKR1AJyhbmC1sb4ZKH3oOhhXqXxJfXXHZCMKCdlXJYmk8e-_AwkzRJmFjWSV__2YNMGNDAWVn=j1iEWuUbbM11Lr8y3Xd7Loq0d39-sj5TwOKt9l3QU2o1ovCHVloga0KCZg7uMewmDeqiOeZGY2R0zBkAbdRHT_cPiXDBSqhmK5172FoSu54So4wGGtQSzga2xDNNeLMDi7A4gEI786VEx0CKbNYxlDbDsb_CZY41U8isQ99UYk9S1SyCTC-M90uR5m9kk=QfofkczMUQ2LuS=KUqUrvxrI2ihUg5ZATorfrc=jBtPy9nidzEaS81LCe9A2iuGerRDALhquSQZg4jiCRgmM9syQv5iWMq1Mrgb5K1Ar4Ajcw51o773ArdsbztOEQqROsKWYYS=mNuDxGug3UM4r3uXIs9zrb4obX-SXz0c=wROBVKec72mcTABHP_OwyHoyN2GvIoZ5TUcmD42aBmxwNY1xWFtKnorr_xoJXeqlU6UM_nw6AlqNI7Mucm6N=OagYMvtZRQqNjm5B3hN=nyYcSxdojhUCD-lF5G=4wShmah5_LE0-NPbdbe7WJmP8SPvo_79ArqqKbRhEs5dgMcPwcFo0P6V3S9sV8Y69dgsr9cYlws_R_5dg16n=KKUzKKgAlrFkAuaK0F_88FPA2VnQbQedhhygeLbDI7e=f91fROO9iBVES0x-ece=ww1lyTE5HSYh3w=J_Bj0DayK8zkFkEUomE6fX3qeaVX5VCO1lVNKcMd8yvRfxZ8It2LtWbLgT3MOD4jXebArDnXK_bHq12OE5GX5S9BDPR77Xdu03vvWkxuAUBmFSPhPFeKt6gmPOF8diXUQjS=OIv6JoETZWawQn2w=2=CehQn8-RySy0C4gWtDWCWyAIkwTSGJaQ3ADGhbaDGTw5Q8CDdBx1hLSb5qzxmWvHeYZIRFdjObqc6_LPt6TsT1zkUHoecaT_oKFG=bSkkvvexnPxwaveSl8e1P=t9PmKmj3wSXR8M2qwKW6HE-FPdz62XTvfe1QGWjLzsB0PJZvtndixOmCCOaFNkEbSrLmjjYW9BQF=bE42MCMVVF_GxyufTfhIDMzE_Jcj-_j-CFdlqHVra6wSeKs-enQ2A-tNu9xVRfhfH1WsOe9JB=3-iM_rxaagvboEbNGODDMM0jvW6sjebfwrjLAPVKz2a8Qlguqg82_CrRzdaSeCUio=WZkz2cnNcCPqudYOXTBKnSNF3xTj8RaD3cWBQmBcjPQoOd_LRRJLZq2ukRLDz4R1bOkDbCscDmtNnCY60xNg9mgdCxXSvhY7S-LnsHx6O40BWKdG8dgycM7HrnsP3JtCntrnvAyYoPJCWWZ=2MVMG-cnuTSXndqIKd9nK2OXn5Y_MtXFV2ChyQsu3S6WCdDW=623Jk54X0VslBX4bgcbxlkPYbFgyyeAzkaI-NSOxSakIHx7ic8BbXfGCq8T-AG=yZ==Ng6qMxKCwZeygeqRNJCaTicsPVNLnCjwOR5hL6EjHLzB8PrzsAxjcarMF3VOPEhgse2JB0MrsVYCRRcsvhXV0BVv6K7b1YQ9J4LiTDFcxfgWaNCh5YzDVQ4yd887wqgVMs0w34ShqZjWejk7-wG_sOaJrPe3wVOOA=BGitI_MvKfQnaJH2zRrlrQS1rWHJBomvTnwYRDHnKvTnq-aB9WdfZVy15sACnauWkxBA69SewswfkWk4uEhr83ki=8XuQHguD1z-qwYhRSijoPKs9xK-x9ekJ=AkVqGrD7kXnerP6Zgs0xX11Bj4=_3JDmkfLcuBhNUs3dBXWu0XXh7clRj5jB0Qhxt8fOYjr25TI-YvMs3_8crZoHf6z7bChRKIlPbiXQ-qUW3VT55j6ZU0j=VZf45PlWBRtX0cJrsE23wQVWykqMIuUn_4r5=cIMCV=GCko_CeP4x=ZCDCBtacHorFi=2l173ffVWPyedW2-6Qdy=Dj3XwWsH2BMfBW8qCYYR2LFZa52Xclq8gcvCJDtZU30uWvXOUwqUUDgbbR9cHeQ14lGABWALV-F1I5rvXvslPdUnC4h=IKlR3U86W3vrcFG7CNyRJGossHEPC6PWGILWvLSkOXXRlKN96PzVxMOAZsAXrC9J-Cd4dFK1n0vN0GiTAOjrvLKbIBxtluIKQL8kKlKdA4KlQz5xFMT_=EYBKolh-Yj4Suo22=x76-Wlv9V=63ZPbF2d2EZ=UEkojqtAb_iX-Tcf0M5WnW6GPXvDY4U5oHgNgoCgV3UhOy8mydz12SAqK2tV3snsLNP=fzORaeULKPVCPMZcmTIR7Z=-UQBqbtDVQqvNdR9KGLELfTZgIDN5rKJ4CEjM1lbBIoPcvLOqHPVyZo2b9E-ZGmeKN1Mis6-t-bfnEekdCOLxLU2oIGT5=P=JVbi6gKd",
"user-agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36 Edg/116.0.1938.69"} "user-agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36 Edg/116.0.1938.69"}
) )
......
...@@ -24,3 +24,18 @@ for k,v in zip(a1,a2): ...@@ -24,3 +24,18 @@ for k,v in zip(a1,a2):
# namespaceURI prefix localName tagName id className classList slot attributes shadowRoot part assignedSlot innerHTML outerHTML scrollTop scrollLeft scrollWidth scrollHeight clientTop clientLeft clientWidth clientHeight onbeforecopy onbeforecut onbeforepaste onsearch elementTiming onfullscreenchange onfullscreenerror onwebkitfullscreenchange onwebkitfullscreenerror role ariaAtomic ariaAutoComplete ariaBusy ariaBrailleLabel ariaBrailleRoleDescription ariaChecked ariaColCount ariaColIndex ariaColSpan ariaCurrent ariaDescription ariaDisabled ariaExpanded ariaHasPopup ariaHidden ariaInvalid ariaKeyShortcuts ariaLabel ariaLevel ariaLive ariaModal ariaMultiLine ariaMultiSelectable ariaOrientation ariaPlaceholder ariaPosInSet ariaPressed ariaReadOnly ariaRelevant ariaRequired ariaRoleDescription ariaRowCount ariaRowIndex ariaRowSpan ariaSelected ariaSetSize ariaSort ariaValueMax ariaValueMin ariaValueNow ariaValueText children firstElementChild lastElementChild childElementCount previousElementSibling nextElementSibling after animate append attachShadow before closest computedStyleMap getAttribute getAttributeNS getAttributeNames getAttributeNode getAttributeNodeNS getBoundingClientRect getClientRects getElementsByClassName getElementsByTagName getElementsByTagNameNS getInnerHTML hasAttribute hasAttributeNS hasAttributes hasPointerCapture insertAdjacentElement insertAdjacentHTML insertAdjacentText matches prepend querySelector querySelectorAll releasePointerCapture remove removeAttribute removeAttributeNS removeAttributeNode replaceChildren replaceWith requestFullscreen requestPointerLock scroll scrollBy scrollIntoView scrollIntoViewIfNeeded scrollTo setAttribute setAttributeNS setAttributeNode setAttributeNodeNS setPointerCapture toggleAttribute webkitMatchesSelector webkitRequestFullScreen webkitRequestFullscreen checkVisibility getAnimations setHTML # namespaceURI prefix localName tagName id className classList slot attributes shadowRoot part assignedSlot innerHTML outerHTML scrollTop scrollLeft scrollWidth scrollHeight clientTop clientLeft clientWidth clientHeight onbeforecopy onbeforecut onbeforepaste onsearch elementTiming onfullscreenchange onfullscreenerror onwebkitfullscreenchange onwebkitfullscreenerror role ariaAtomic ariaAutoComplete ariaBusy ariaBrailleLabel ariaBrailleRoleDescription ariaChecked ariaColCount ariaColIndex ariaColSpan ariaCurrent ariaDescription ariaDisabled ariaExpanded ariaHasPopup ariaHidden ariaInvalid ariaKeyShortcuts ariaLabel ariaLevel ariaLive ariaModal ariaMultiLine ariaMultiSelectable ariaOrientation ariaPlaceholder ariaPosInSet ariaPressed ariaReadOnly ariaRelevant ariaRequired ariaRoleDescription ariaRowCount ariaRowIndex ariaRowSpan ariaSelected ariaSetSize ariaSort ariaValueMax ariaValueMin ariaValueNow ariaValueText children firstElementChild lastElementChild childElementCount previousElementSibling nextElementSibling after animate append attachShadow before closest computedStyleMap getAttribute getAttributeNS getAttributeNames getAttributeNode getAttributeNodeNS getBoundingClientRect getClientRects getElementsByClassName getElementsByTagName getElementsByTagNameNS getInnerHTML hasAttribute hasAttributeNS hasAttributes hasPointerCapture insertAdjacentElement insertAdjacentHTML insertAdjacentText matches prepend querySelector querySelectorAll releasePointerCapture remove removeAttribute removeAttributeNS removeAttributeNode replaceChildren replaceWith requestFullscreen requestPointerLock scroll scrollBy scrollIntoView scrollIntoViewIfNeeded scrollTo setAttribute setAttributeNS setAttributeNode setAttributeNodeNS setPointerCapture toggleAttribute webkitMatchesSelector webkitRequestFullScreen webkitRequestFullscreen checkVisibility getAnimations setHTML
# title lang translate dir hidden accessKey draggable spellcheck textprediction autocapitalize contentEditable enterKeyHint isContentEditable inputMode virtualKeyboardPolicy offsetParent offsetTop offsetLeft offsetWidth offsetHeight innerText outerText onbeforexrselect onabort onbeforeinput onblur oncancel oncanplay oncanplaythrough onchange onclick onclose oncontextlost oncontextmenu oncontextrestored oncuechange ondblclick ondrag ondragend ondragenter ondragleave ondragover ondragstart ondrop ondurationchange onemptied onended onerror onfocus onformdata oninput oninvalid onkeydown onkeypress onkeyup onload onloadeddata onloadedmetadata onloadstart onmousedown onmouseenter onmouseleave onmousemove onmouseout onmouseover onmouseup onmousewheel onpause onplay onplaying onprogress onratechange onreset onresize onscroll onsecuritypolicyviolation onseeked onseeking onselect onslotchange onstalled onsubmit onsuspend ontimeupdate ontoggle onvolumechange onwaiting onwebkitanimationend onwebkitanimationiteration onwebkitanimationstart onwebkittransitionend onwheel onauxclick ongotpointercapture onlostpointercapture onpointerdown onpointermove onpointerrawupdate onpointerup onpointercancel onpointerover onpointerout onpointerenter onpointerleave onselectstart onselectionchange onanimationend onanimationiteration onanimationstart ontransitionrun ontransitionstart ontransitionend ontransitioncancel oncopy oncut onpaste dataset nonce autofocus tabIndex style attributeStyleMap attachInternals blur click focus inert oncontentvisibilityautostatechange onscrollend popover onbeforetoggle onbeforematch hidePopover showPopover togglePopover attachShadow # title lang translate dir hidden accessKey draggable spellcheck textprediction autocapitalize contentEditable enterKeyHint isContentEditable inputMode virtualKeyboardPolicy offsetParent offsetTop offsetLeft offsetWidth offsetHeight innerText outerText onbeforexrselect onabort onbeforeinput onblur oncancel oncanplay oncanplaythrough onchange onclick onclose oncontextlost oncontextmenu oncontextrestored oncuechange ondblclick ondrag ondragend ondragenter ondragleave ondragover ondragstart ondrop ondurationchange onemptied onended onerror onfocus onformdata oninput oninvalid onkeydown onkeypress onkeyup onload onloadeddata onloadedmetadata onloadstart onmousedown onmouseenter onmouseleave onmousemove onmouseout onmouseover onmouseup onmousewheel onpause onplay onplaying onprogress onratechange onreset onresize onscroll onsecuritypolicyviolation onseeked onseeking onselect onslotchange onstalled onsubmit onsuspend ontimeupdate ontoggle onvolumechange onwaiting onwebkitanimationend onwebkitanimationiteration onwebkitanimationstart onwebkittransitionend onwheel onauxclick ongotpointercapture onlostpointercapture onpointerdown onpointermove onpointerrawupdate onpointerup onpointercancel onpointerover onpointerout onpointerenter onpointerleave onselectstart onselectionchange onanimationend onanimationiteration onanimationstart ontransitionrun ontransitionstart ontransitionend ontransitioncancel oncopy oncut onpaste dataset nonce autofocus tabIndex style attributeStyleMap attachInternals blur click focus inert oncontentvisibilityautostatechange onscrollend popover onbeforetoggle onbeforematch hidePopover showPopover togglePopover attachShadow
# target download ping rel relList hreflang type referrerPolicy text coords charset name rev shape origin protocol username password host hostname port pathname search hash href toString hrefTranslate # target download ping rel relList hreflang type referrerPolicy text coords charset name rev shape origin protocol username password host hostname port pathname search hash href toString hrefTranslate
print('-----')
c1 = 'joinres target,download,ping,rel,relList,hreflang,type,referrerPolicy,text,coords,charset,name,rev,shape,origin,protocol,username,password,host,hostname,port,pathname,search,hash,href,toString,hrefTranslate,title,lang,translate,dir,hidden,accessKey,draggable,spellcheck,textprediction,autocapitalize,contentEditable,enterKeyHint,isContentEditable,inputMode,virtualKeyboardPolicy,offsetParent,offsetTop,offsetLeft,offsetWidth,offsetHeight,innerText,outerText,onbeforexrselect,onabort,onbeforeinput,onblur,oncancel,oncanplay,oncanplaythrough,onchange,onclick,onclose,oncontextlost,oncontextmenu,oncontextrestored,oncuechange,ondblclick,ondrag,ondragend,ondragenter,ondragleave,ondragover,ondragstart,ondrop,ondurationchange,onemptied,onended,onerror,onfocus,onformdata,oninput,oninvalid,onkeydown,onkeypress,onkeyup,onload,onloadeddata,onloadedmetadata,onloadstart,onmousedown,onmouseenter,onmouseleave,onmousemove,onmouseout,onmouseover,onmouseup,onmousewheel,onpause,onplay,onplaying,onprogress,onratechange,onreset,onresize,onscroll,onsecuritypolicyviolation,onseeked,onseeking,onselect,onslotchange,onstalled,onsubmit,onsuspend,ontimeupdate,ontoggle,onvolumechange,onwaiting,onwebkitanimationend,onwebkitanimationiteration,onwebkitanimationstart,onwebkittransitionend,onwheel,onauxclick,ongotpointercapture,onlostpointercapture,onpointerdown,onpointermove,onpointerrawupdate,onpointerup,onpointercancel,onpointerover,onpointerout,onpointerenter,onpointerleave,onselectstart,onselectionchange,onanimationend,onanimationiteration,onanimationstart,ontransitionrun,ontransitionstart,ontransitionend,ontransitioncancel,oncopy,oncut,onpaste,dataset,nonce,autofocus,tabIndex,style,attributeStyleMap,attachInternals,blur,click,focus,inert,oncontentvisibilityautostatechange,onscrollend,popover,onbeforetoggle,onbeforematch,hidePopover,showPopover,togglePopover,namespaceURI,prefix,localName,tagName,id,className,classList,slot,attributes,shadowRoot,part,assignedSlot,innerHTML,outerHTML,scrollTop,scrollLeft,scrollWidth,scrollHeight,clientTop,clientLeft,clientWidth,clientHeight,onbeforecopy,onbeforecut,onbeforepaste,onsearch,elementTiming,onfullscreenchange,onfullscreenerror,onwebkitfullscreenchange,onwebkitfullscreenerror,role,ariaAtomic,ariaAutoComplete,ariaBusy,ariaBrailleLabel,ariaBrailleRoleDescription,ariaChecked,ariaColCount,ariaColIndex,ariaColSpan,ariaCurrent,ariaDescription,ariaDisabled,ariaExpanded,ariaHasPopup,ariaHidden,ariaInvalid,ariaKeyShortcuts,ariaLabel,ariaLevel,ariaLive,ariaModal,ariaMultiLine,ariaMultiSelectable,ariaOrientation,ariaPlaceholder,ariaPosInSet,ariaPressed,ariaReadOnly,ariaRelevant,ariaRequired,ariaRoleDescription,ariaRowCount,ariaRowIndex,ariaRowSpan,ariaSelected,ariaSetSize,ariaSort,ariaValueMax,ariaValueMin,ariaValueNow,ariaValueText,children,firstElementChild,lastElementChild,childElementCount,previousElementSibling,nextElementSibling,after,animate,append,attachShadow,before,closest,computedStyleMap,getAttribute,getAttributeNS,getAttributeNames,getAttributeNode,getAttributeNodeNS,getBoundingClientRect,getClientRects,getElementsByClassName,getElementsByTagName,getElementsByTagNameNS,getInnerHTML,hasAttribute,hasAttributeNS,hasAttributes,hasPointerCapture,insertAdjacentElement,insertAdjacentHTML,insertAdjacentText,matches,prepend,querySelector,querySelectorAll,releasePointerCapture,remove,removeAttribute,removeAttributeNS,removeAttributeNode,replaceChildren,replaceWith,requestFullscreen,requestPointerLock,scroll,scrollBy,scrollIntoView,scrollIntoViewIfNeeded,scrollTo,setAttribute,setAttributeNS,setAttributeNode,setAttributeNodeNS,setPointerCapture,toggleAttribute,webkitMatchesSelector,webkitRequestFullScreen,webkitRequestFullscreen,checkVisibility,getAnimations,setHTML,nodeType,nodeName,baseURI,isConnected,ownerDocument,parentNode,parentElement,childNodes,firstChild,lastChild,previousSibling,nextSibling,nodeValue,textContent,ELEMENT_NODE,ATTRIBUTE_NODE,TEXT_NODE,CDATA_SECTION_NODE,ENTITY_REFERENCE_NODE,ENTITY_NODE,PROCESSING_INSTRUCTION_NODE,COMMENT_NODE,DOCUMENT_NODE,DOCUMENT_TYPE_NODE,DOCUMENT_FRAGMENT_NODE,NOTATION_NODE,DOCUMENT_POSITION_DISCONNECTED,DOCUMENT_POSITION_PRECEDING,DOCUMENT_POSITION_FOLLOWING,DOCUMENT_POSITION_CONTAINS,DOCUMENT_POSITION_CONTAINED_BY,DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC,appendChild,cloneNode,compareDocumentPosition,contains,getRootNode,hasChildNodes,insertBefore,isDefaultNamespace,isEqualNode,isSameNode,lookupNamespaceURI,lookupPrefix,normalize,removeChild,replaceChild,addEventListener,dispatchEvent,removeEventListener'.split(',')
print(len(c1))
c2 = 'org,target,download,ping,rel,relList,hreflang,type,referrerPolicy,text,coords,charset,name,rev,shape,origin,protocol,username,password,host,hostname,port,pathname,search,hash,href,toString,hrefTranslate,attributionSrc,title,lang,translate,dir,hidden,accessKey,draggable,spellcheck,autocapitalize,contentEditable,enterKeyHint,isContentEditable,inputMode,virtualKeyboardPolicy,offsetParent,offsetTop,offsetLeft,offsetWidth,offsetHeight,popover,innerText,outerText,onbeforexrselect,onabort,onbeforeinput,onbeforetoggle,onblur,oncancel,oncanplay,oncanplaythrough,onchange,onclick,onclose,oncontextlost,oncontextmenu,oncontextrestored,oncuechange,ondblclick,ondrag,ondragend,ondragenter,ondragleave,ondragover,ondragstart,ondrop,ondurationchange,onemptied,onended,onerror,onfocus,onformdata,oninput,oninvalid,onkeydown,onkeypress,onkeyup,onload,onloadeddata,onloadedmetadata,onloadstart,onmousedown,onmouseenter,onmouseleave,onmousemove,onmouseout,onmouseover,onmouseup,onmousewheel,onpause,onplay,onplaying,onprogress,onratechange,onreset,onresize,onscroll,onsecuritypolicyviolation,onseeked,onseeking,onselect,onslotchange,onstalled,onsubmit,onsuspend,ontimeupdate,ontoggle,onvolumechange,onwaiting,onwebkitanimationend,onwebkitanimationiteration,onwebkitanimationstart,onwebkittransitionend,onwheel,onauxclick,ongotpointercapture,onlostpointercapture,onpointerdown,onpointermove,onpointerrawupdate,onpointerup,onpointercancel,onpointerover,onpointerout,onpointerenter,onpointerleave,onselectstart,onselectionchange,onanimationend,onanimationiteration,onanimationstart,ontransitionrun,ontransitionstart,ontransitionend,ontransitioncancel,oncopy,oncut,onpaste,dataset,nonce,autofocus,tabIndex,style,attributeStyleMap,attachInternals,blur,click,focus,hidePopover,showPopover,togglePopover,inert,oncontentvisibilityautostatechange,onscrollend,onbeforematch,namespaceURI,prefix,localName,tagName,id,className,classList,slot,attributes,shadowRoot,part,assignedSlot,innerHTML,outerHTML,scrollTop,scrollLeft,scrollWidth,scrollHeight,clientTop,clientLeft,clientWidth,clientHeight,onbeforecopy,onbeforecut,onbeforepaste,onsearch,elementTiming,onfullscreenchange,onfullscreenerror,onwebkitfullscreenchange,onwebkitfullscreenerror,role,ariaAtomic,ariaAutoComplete,ariaBusy,ariaBrailleLabel,ariaBrailleRoleDescription,ariaChecked,ariaColCount,ariaColIndex,ariaColSpan,ariaCurrent,ariaDescription,ariaDisabled,ariaExpanded,ariaHasPopup,ariaHidden,ariaInvalid,ariaKeyShortcuts,ariaLabel,ariaLevel,ariaLive,ariaModal,ariaMultiLine,ariaMultiSelectable,ariaOrientation,ariaPlaceholder,ariaPosInSet,ariaPressed,ariaReadOnly,ariaRelevant,ariaRequired,ariaRoleDescription,ariaRowCount,ariaRowIndex,ariaRowSpan,ariaSelected,ariaSetSize,ariaSort,ariaValueMax,ariaValueMin,ariaValueNow,ariaValueText,children,firstElementChild,lastElementChild,childElementCount,previousElementSibling,nextElementSibling,after,animate,append,attachShadow,before,closest,computedStyleMap,getAttribute,getAttributeNS,getAttributeNames,getAttributeNode,getAttributeNodeNS,getBoundingClientRect,getClientRects,getElementsByClassName,getElementsByTagName,getElementsByTagNameNS,getInnerHTML,hasAttribute,hasAttributeNS,hasAttributes,hasPointerCapture,insertAdjacentElement,insertAdjacentHTML,insertAdjacentText,matches,prepend,querySelector,querySelectorAll,releasePointerCapture,remove,removeAttribute,removeAttributeNS,removeAttributeNode,replaceChildren,replaceWith,requestFullscreen,requestPointerLock,scroll,scrollBy,scrollIntoView,scrollIntoViewIfNeeded,scrollTo,setAttribute,setAttributeNS,setAttributeNode,setAttributeNodeNS,setPointerCapture,toggleAttribute,webkitMatchesSelector,webkitRequestFullScreen,webkitRequestFullscreen,checkVisibility,getAnimations,nodeType,nodeName,baseURI,isConnected,ownerDocument,parentNode,parentElement,childNodes,firstChild,lastChild,previousSibling,nextSibling,nodeValue,textContent,ELEMENT_NODE,ATTRIBUTE_NODE,TEXT_NODE,CDATA_SECTION_NODE,ENTITY_REFERENCE_NODE,ENTITY_NODE,PROCESSING_INSTRUCTION_NODE,COMMENT_NODE,DOCUMENT_NODE,DOCUMENT_TYPE_NODE,DOCUMENT_FRAGMENT_NODE,NOTATION_NODE,DOCUMENT_POSITION_DISCONNECTED,DOCUMENT_POSITION_PRECEDING,DOCUMENT_POSITION_FOLLOWING,DOCUMENT_POSITION_CONTAINS,DOCUMENT_POSITION_CONTAINED_BY,DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC,appendChild,cloneNode,compareDocumentPosition,contains,getRootNode,hasChildNodes,insertBefore,isDefaultNamespace,isEqualNode,isSameNode,lookupNamespaceURI,lookupPrefix,normalize,removeChild,replaceChild,addEventListener,dispatchEvent,removeEventListener'.split(',')
print(len(c2))
for c in c1:
if c not in c2:
print(c)
\ No newline at end of file
...@@ -92,27 +92,27 @@ var origslice = [].slice; ...@@ -92,27 +92,27 @@ var origslice = [].slice;
return res; return res;
}) })
// // document.cookie = 'sRpK8nqm_sc=A9EBM6mMAQAABr7rR-6k_cD1NDefUGYZBlvraANwxoU0F86e5XoQveY1mz4UARf3iT0AAAAAAAAAAAAAAAAAAA|1|0|27ee2b2f98e6c25dfd8413111062fcf921881318' // // document.cookie = 'sRpK8nqm_sc=A9EBM6mMAQAABr7rR-6k_cD1NDefUGYZBlvraANwxoU0F86e5XoQveY1mz4UARf3iT0AAAAAAAAAAAAAAAAAAA|1|0|27ee2b2f98e6c25dfd8413111062fcf921881318'
_getOwnPropertyNames = Object.getOwnPropertyNames; // _getOwnPropertyNames = Object.getOwnPropertyNames;
Object.getOwnPropertyNames = saf(function (a) { // Object.getOwnPropertyNames = saf(function (a) {
let res = _getOwnPropertyNames(a); // let res = _getOwnPropertyNames(a);
_print('getOwnPropertyNames', a, res) // _print('getOwnPropertyNames', a, res)
return res; // return res;
//
}) // })
_getOwnPropertyDescriptors = Object.getOwnPropertyDescriptors; // _getOwnPropertyDescriptors = Object.getOwnPropertyDescriptors;
Object.getOwnPropertyDescriptors = saf(function (a) { // Object.getOwnPropertyDescriptors = saf(function (a) {
let res = _getOwnPropertyDescriptors(a); // let res = _getOwnPropertyDescriptors(a);
_print('getOwnPropertyDescriptors', a, res) // _print('getOwnPropertyDescriptors', a, res)
return res; // return res;
//
}) // })
_getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor; // _getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
Object.getOwnPropertyDescriptor = saf(function (a, b) { // Object.getOwnPropertyDescriptor = saf(function (a, b) {
let res = _getOwnPropertyDescriptor(a,b); // let res = _getOwnPropertyDescriptor(a,b);
_print('getOwnPropertyDescriptor', a,b, res) // _print('getOwnPropertyDescriptor', a,b, res)
return res; // return res;
//
}) // })
Object.defineProperties(crypto,{ Object.defineProperties(crypto,{
...@@ -136,8 +136,12 @@ Object.defineProperties(crypto,{ ...@@ -136,8 +136,12 @@ Object.defineProperties(crypto,{
let addEvent = EventTarget.prototype.addEventListener let addEvent = EventTarget.prototype.addEventListener
EventTarget.prototype.addEventListener = saf(function (a, b, c) { EventTarget.prototype.addEventListener = saf(function (a, b, c) {
con5('addEventListener', a, b, c) con5('addEventListener', a, b, c)
if (a === 'cRGHUGTDx9XPVtt5hQ2b')return; // if (a === 'cRGHUGTDx9XPVtt5hQ2b')return;
return addEvent.call(this, a, b, c) t = function (){
con5('t.call',a, arguments)
b.apply(this, arguments)
}
return addEvent.call(this, a, t, c)
}) })
......
This source diff could not be displayed because it is too large. You can view the blob instead.
No preview for this file type
...@@ -18,51 +18,18 @@ headers = { ...@@ -18,51 +18,18 @@ headers = {
"content-type": "application/json", "content-type": "application/json",
"origin": "https://www.southwest.com", "origin": "https://www.southwest.com",
"pragma": "no-cache", "pragma": "no-cache",
# "referer": "https://www.southwest.com/air/booking/select.html?int=HOMEQBOMAIR&adultPassengersCount=1&departureDate=2023-09-21&destinationAirportCode=LAX&fareType=USD&originationAirportCode=LAS&passengerType=ADULT&promoCode=&returnDate=2023-09-24&tripType=roundtrip&from=&to=&adultsCount=1&departureTimeOfDay=ALL_DAY&reset=true&returnTimeOfDay=ALL_DAY",
# "user-agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36",
"x-api-key": "l7xx944d175ea25f4b9c903a583ea82a1c4c", "x-api-key": "l7xx944d175ea25f4b9c903a583ea82a1c4c",
"x-app-id": "air-booking", "x-app-id": "air-booking",
"x-channel-id": "southwest", "x-channel-id": "southwest",
} }
# l = [
# [
# "EE30zvQLWf-f",
# "A3rqjXiNAQAAVvLE1z9KbiWneVVq9p80noy2jNGEe-JSKpbqpN80MCLgirAlAReeaPoXTuHJwH9eCOfvosJeCA=="
# ],
# [
# "EE30zvQLWf-b",
# "-hxz24i"
# ],
# [
# "EE30zvQLWf-c",
# "ACCmjHiNAQAAe7rgj00yqbYtrZ7SaopFFWvHLQExprqU6O5toYW_eK6Sqowm"
# ],
# [
# "EE30zvQLWf-d",
# "ABaAhIDBCKGFgQGAAYIQgISigaIAwBGAzvpizi_33weFv3iukqqMJv____-Q82rrAFqsG-QbAdZVqV_3CsJVptQ"
# ]
# ,[
# "EE30zvQLWf-z",
# "q"
# ]
# ,[
# "EE30zvQLWf-a",
# "L0KViyFTZ1v2ek9Ke7j5YGQVLsW4DNgCJjgxaZ=YPLA0ZJnjabQuc3paR6xJf=haMrns0I8kcdvLbCLlYlcGe7HNVUJVQd=KBeG3RYFK7MpEFqpaAwjTcAfU4EYf-=16=vTwqFfQ=hd4mW2=YMcXjuooBQq9MNH5m5YOtpo3=RGrt2m6EwAhrek9H51z3WfODGiuPJCWkQVgKZeWJIay_AM4Z65yMCwv5BLmGgfTuLddmvBYE9GQ_0kjHFPrsIsmOYw4p-VB-lg0vbFWa8pzbL6LE1DJ9tqvOdCU54auMU9COuuJGOCDl0Khkr9mTB-H=4Yfs5NnDEowxc4ZZsTcoT5NuHhLR1I4OcQoYJpWX_yR0jQGIJrqwIOjEmoDUwLtPxANW9Z5_xgBjlvvfUT5re3WqlGZ11i911FgPE5zLLjnWumEGBTATKErW5e84FKk3BEmeG1GT6fKOii_6JmGBGO8WZZ2YpmpFpXsyNZthpBLn-P6__Tr=HE5KIyRpD-F_hp918U8FelrT=Gs0fUraD89BDB4-8H2FWuU9P35ihtkdE0flIthYkDryklxI7Vh_B9QMVhuPNGXj1tMI6uganiEgTEfOyOTvkHuiOpiUmmk_t-6HkvlAjtdHtpk-vDBKLqjV_j9IdUZI5RKC=ZtqLCoVsmUdBY4qGkIxXL0QzdDPjEH3NZ0Fq=06yyP2-bnO6MimYW75DTMaG2YVnUNL52yfPoZTsawp2L3Lm2cRm7UUlYGLjmeUodl3RG0oRvxYhppuD57dhuAtx4mAMK5QnlVv5gBN9By1zXZBjPah6glpFQEi3BeIEiK2J8X2gUJlaYAKjAXMkgdAEV2AmN2d70mIe3OpvozwvnCna=0kz8-RYnRymigAgBd4N4kCWZfKbVGnyK1O3AA8-oNDz6jD07Dr0NjN7fVvk53vmf2ljIKbgzYKLA1qv2mcEuv-B4dH6m2AOjR87bNs_m33uCHIYcdmzUMfBVK=aLIdKCnhBIIcGh041Cp44BM2xxD39U4EjezYtcvzUEMWfedcP7TQBZDG4QGzExJ657MRvu74zO7Hd67amjpbeZUuF6KQpoDDEnpVgdAHvh7OxQR_LazARGWPdDX6MMvuBt_JM0AM4t0tG6L6kuIri7TQtx0a-weDqBRo0gC0Zrd89OsLQEXPNJy_Ye0P1heghcsnkyKYP9mkN3MfAhAXh9c27I2mt0dkHCgQAfs1E84wdJriX0DDaxyhwfI_bCRYAyNHerMWl3uaia_ki8Ecu=gos9wiHEs82dWDGNoaogmBRr7A_giltdQA0X76O9tpy51-EN3zcU-Xx7FIwsD8R8feOO-iQr3J4fwz9d5qBZ1Xls=PjAOtxTuR0yV3LK-Bz38_oocu6I6WrsbrQ0x21jT5HvLbtiwBgJT=WZzFPgEuse6t=YlpykkJ7cr2o0TtbXvOvLM93kNesxadf07gUhkasgfR6QYfFmDa4XsWAQXjiWQVwAcWAplQOiYCaG7tUeuIPzMTYpgpZVQ=jsoV-PWCTmIQnLoXxRHQzt22_MK8OkRRW6Vi2QqGow77NKpz6XJkK-=ORV=bXwdhLKuf=JDZwRr3bInNE7i1yad6j9be3_mwAP=fF3N8w-V0mc_Awuz8ruLbHGetx45vccaRYjMq2LrTP_o5H23kQ3C2zq3g9NbgiCOR020HOKV71_ZY0peovqRr18jjYp3JGuTpqrL5u=rM2GW=YfKssnLdna6mklg0nbRvqnBw82krv-Hex4EA37Grm7XzyVPVYGveK7zj4"
# ]
# ]
# for i in l:
# headers.update({
# i[0].lower():i[1]
# })
# https://www.southwest.com/assets/app/scripts/swa-common.js
headers.update( headers.update(
{"ee30zvqlwf-f": "A2TdhH2NAQAAmtqj1GVGcQfpbp7rJ0AtA0bAtOn5fDg0p76xorWuCEnE7nE-AReeaPgXTuHJwH9eCOfvosJeCA==", {"ee30zvqlwf-f": "AyGV75iNAQAAn9wHEZ2_lZozjyfZlGthJJ-ZWYHqoJ9KqCpkm4ZrUPKEfptvAbz9BxUXTlIDwH8AAEB3AAAAAA==",
"ee30zvqlwf-b": "p5wkh1", "ee30zvqlwf-c": "AICngH2NAQAA-qTXIideQEieetIUTagcFySBTcg2j76y9N75D7Hzub5UqYcX", "ee30zvqlwf-b": "-9zym6p", "ee30zvqlwf-c": "AMC_7piNAQAAQX_9HhVkoGl8R-Z2lwW91MKdoG89KmKhXOd-L6HwILFrtzb7",
"ee30zvqlwf-d": "ABaAhIDBCKGFgQGAAYIQgISigaIAwBGAzvpizi_33wex87m-VKmHF_____-Q82rrACxy9AZgeUUNCwefjQD6mh8", "ee30zvqlwf-d": "ABaAhIDBCKGFgQGAAYIQgISigaIAwBGAzvpizi_33weh8CCxa7c2-wAAAAAncNoPAP5mfau2pBgwEiTsZCprHCA",
"ee30zvqlwf-z": "q", "ee30zvqlwf-z": "q",
"ee30zvqlwf-a": "ALlqX7tN4kua97fT_BlyfHom1P4U6-LUT4E5YL_7bsuNvOTe6a1zRprPtjscp614v506cm4Q4jrQcW54FwkvRvai_b-vDkKAE=99FxNVVPGVJ5_XJ=PlbyllYYG9FZS=Y_CoOCzWyS8uTW_W=sRLVz8y6QsT0x2SnlIzcBrl56DPcB5z_1BIdtnbcHsm-EsVnftmLtIeVkCDfnyclCcq6Hk-HQPcLKLPEZjVVIHK9sSm=OtiIZgctGrktozcS6jMynzOxuqF7lNWPXeUx8Y6aPamOzo8ZgPwP6HFC0-4RT-BQWisTxqskyu1mNOAHiLkELJXqBXyk=CYGHFNhmFl0lQBddTbr51XmUYHmJS769wBhoj8xqBIKxG2BM6Z0e56M=aY4P0YUDjECNklx5r66XYjVu8F9ngh=rLegGZIukwOueW=HmdQpfVJYzU1wOHxzMUirxDngcs_F6HNQNmzPGcVF2ABraGVa6gQPnuHX7rqcFPRqEXm-CXV6tmsoeY0KvErLuifV6KetGwK0BS-IuUY7nVX7008AEBUzlFR7cKUYNwoFdUPU4-uh_wvL2KUf8B8=s2ajqPUB95ZdB6z5g2sEe27-S4aXkMi_RIbzYa2dP4MtwYt7w4urSCX9foBrI5xKehiOfUOEdwTm5Oov6Aes5ogJtfqJNLvl58o2Ys5ZX8C6ck=58X=FJ2MOlsQkoSULnkRJBiMl1vTdIpca-wC6ZKfWpwDkcI1i9BgR7G81cV8rFKjMLCtSeExJdnOMy6eeeeLWel90XbzqNOhRYMy=Dqemxb-oqLyBCeR40CiHhupMuZdfQ_E9wXycWPXHndoFBZdlvTojlqZqnStwpJ5qn5TQ5MrTm0th7U9=k44pSi_MB2q_yaOsEyqsXPzZlW1bgV0iVxC-1wLy1gu5m2_=6R9qXvFJIkF6whF0hupzg4=pCxfhu6GowuZDsQ=BzWGNOFSzqUGPTlhhcXcWIPc5V-i6IQ7M2xwJXhra70vIwH29nkDJnFwBlkHrYZeAAr9vY2_F2ifRPBskoIzMZivyhOMc2HGqUydXQSK7MYTatXhPkVsnF8P7ngr2HfOHB0bbYC=071d_t4fARiVfNQu5_0C1GY8HlGRaZNVQrQLKvtx2_jZaqrh0AlXE0meNdSGyLHPRfzSkkhutZz=VcagJSrvpSyO-GIiAses20=ifuo-NzDz4qZhlJlhGCMNGWqZXuW-RY_Mx81iXx7r6JFINYpJP6H9WxPGUKmMO=cDBsncXNL5_dphDRN1=wJuWzgXyfxyWArvmQyU1KLXCebgrGQZy5cmWABZasjPs2d8wqjObHwfvK_UohG7gxtxdRAyxWQmBOll5duNvUzj-jo8e=jCeXKSu20=PSvY=tjj9IVEY1WL0PhxZmlXnsEjThzALX0lVMPglFPLWKVTgzTnkVdsaYj-LsWVfBnmAb2FJUbYGLPCocQ9MhvNksHDSLwVkpDACYVkuZNR0RpFR2IhOfrKZ2VBQ__so9a7jNQBHY0MQwQHBENxy=WliMuHIVl1PvRgEzqj2h_SQMUYjSg1vd9j1yYGXGIGf=r_lLBkxO98obahREfEHti5Db-bmQTm9UiHp2TnJ_Onz=ivJG2TW4nTLsYHJw5YVO-N-7r_o5O=v0yMJaut-0ZFOxvTYSGCtPwi-4EnDn22GAy2bWJSNS_b2n4sZJBjU94cyeHVc21TdnGXlowTRoyprDAbKS_MQ=XHmAgFsd40rNiGAFWIrK0Z_iQqqMJJMW0ImMvx_=hrHkNXxzveiuZxzs84hP4ZiaFYKjwfqfyezcPjaZ5a2O=Mz0m9YAB_xkkIHD9VQwcTbdh_iMMqv0YqHkwNzk6hItOlmjkyrALPoGxSqt6ZrknDsk6X7uRcufG=amSl0vjQcNtMyt1Yk=Uf1FUS1QG5Mj8UribXbF4Rfbi_jszPWgvBpTKJ8BXyEV2gGw=rUrmbiKQXfttVuYCq=sy9ReBQqJKG=fmlXZRsLrSiNvwP7a=6k4=-2RCchIiHlcBA2c=Kb0ftsu_1nEcawzop9T6rRbSa9Kavu-DLRSIFaSJGPSzQHoh5bo5JNdFmCFdz=50mCz9NtvpkswIgr-QaTyFL7kyQiRmlFNEvwTbyzH4JgYGaQoyRRlS=SKDF5zzMoyNTipeS0IQGOttk8b0R0SXpKD_kSJeEcDgs1wEjSglBqbpXj=jiY_iX_IrqAvsYs_HvUetXNxuJ4f9=mHrUUddA1A5_q=WEQ_TMOPq-0nSXP5XXLkmdhxG-pbCYEqrLHoQS64JC10vKsvKuwDq6SOO9bp=egh7IRhFrxVds7Mazz4XLIq=TUsTk4uZfsGnnILGprS7C5ftl2riQzFJiK7kAkXJ_XJqDo=4twGouukOyZfpmhVqAcUo_ndJSw7Sto6kZjoiReYpDXUY4-_sOYtBPAFFRKNfGBQv96WyutI5hQ1dw0eHkqabM9NANRXo25znS0jiFFqkNoWxqeGbD1mKxrJMHjs-5_v2ohSZsRj=dqpbRKmWIzx6jfr9OiMbey2qooKKHuLyo=dJtkAwCYWKJ8eGOOTVFZTtHt-l9HiJEuCH6hUhV7HRzFlo-iV6T7-7bGuk-=L4J5EHzzFsIXFZ1EYA0FUpCyPdqHi1VtenKHUa7enefdDBbY7_B5fkxkKWCrFa6b6ES9gqwcgODqKS5NulX7jdMfdUiitV14MXjcnQ5DX8D0QHrmLoYA9LMFPxpzuZJAN2nVJCmm8PGi_46ZyTWN5oMy9Zg5JwrmZvYcOio=Yu_pm6mE8ZLpXWXowHn-hUdT6qeJbpA9Jz95WfUZ7=b-yCOSMZ80t6LPSQl2wWH1tHNvi8zMC2iiMQr8oZfvjEC5mWh_27lgapi_mo6q8GhQBYw=4LMennDw0bj-W_xi52WAkVgvwAZHKTUS-IvW5-2YPdX2fiiROSLVAKRCyrp-8PxycC0QCabEI60OPuWbzyISAG_toBVY-0C4tZYsiDmXGDzs7=xfprJrG6vKxmgErwinJOQlVyoCMmw7ix4wN8875MPuJGH6IJfLEVgtXvyLmlwoneb0nzQjh19UmwI5N2WAm=cBbWP87WN26StJYg-hvF5TD4TD4YvlTqnNRdudOAeOzoaT2Fnd4od8dCJUYA10QCOHRIpwfqkUVlVpIB-9VIFJfIhKfaX9gJR7NO6ebgomJvzO=sg5ulE2HxXKQAsDMPvQTduc8u6pLTdcL2dphs2zRhQiukI-xhUn1J4AKFLxfd1=dgpN9ixKU_efMo9y0zui2GtVKTcgudv0zlj7KNXaWNPsSivdtJznBHzNQkBfjCEj05LFMKsYm6Fu5qrU4UTb58vgj-Ztnodk6-OrG22_sf0B8NzKQGYBIumNcTPLFBz7=tPwbbdQotRoZAI7n6Vs7dLVh6Cng=B2p8DVuQk=SnYjhqG_sT0MlGYJ0oE0goqYCtfsRn2sH4Gsue9jIMAnPBXxKkaDd68naBkSx70jVYp0eLS_S9qcUbLJRZ-1eJeRDgKt_dYEZbceUGwzxMbA49iP7pdNz6Zm9IzKzkRJvobNutbBjmRd1xW2DpGi15Eld7anUNZ-49582t4Xl0a8cI46DJMo6z08che-ESK2nRSu7Bit11zIECKbIOdYXSVFJuvimC=rZkK80th_GxCU8pl9ZF_BfwwkpsPHjNbhGXWd-VGi8Y_MzTBjRoZxhMf5Dyskg78O1WZptZeK=sY89yzqKnJime_KKU4MUB2c4o_WfFMokUc6suTucdhGh1kLfJsLAF20moJCnwLyvM8Svkn_GPM1uX77UIP4NNv1kFxIegLi5XhA4L07BI9opsWAkD4y6Ap6Wyg1pZaDNDabrVIrJCdDD0xYCru5LcNatPCKOg2P8XPDVmiXSpwWf2W-TGrIghh_zYjeIYtPcRS2UdD7-6Y=ROBEEB9Ktjwv0jzGY02cZuQDH0IaJFsCL=H2xeiw95gpM8JjgaN-L19dKAXB47UmfWii-V0ts6rXOcYcs-M=YJQDvM4loUzaoTjp8=imiunXZnczSGPvynItIBL8NLEDfVLXyuteFQFxK=wOU6FCaPfYo04BM9vkI2jBuoDm08M4C_G2LXNRxu78bcPt5jfHODqpJuWlrB7KGZvmVdbsvCiL7e4TVb6b8_wrMgFevGbd0fcdKLTS5Zn0LjDUr2=vIwGkqKByVumGP48EBBPq_ODhtwY0Sg_IRMfuHFNggOqjTQhru6Ek6PROSr-11biTJXHWfZf9UN4H7-lPj6GTXnP4lrG0_pJIAWsnOaEyO0uE6VuUy174U56Fm0XcZbEmbsHX12AZt81TP9T_ebu1qe_fjx9=g2yEkDAJ5gtiEo2pmNwFQTCRi8tebc8qajz41-q9Njjf=r4eCC2-nxK5yH2=f7tSMPgYDKY8fEMyrIg-Lj2ayo8GDkngFMqG-lnpBjsvGOL", "ee30zvqlwf-a": "_5-jr6v5IDaVwUmDVDMfcF3ukW=eUEdJtkb4V7XDLIn-264PA-pYmp2q-=Qq0sm5QqLA1Ufobv-xXg-rJby11aBQZO0CvUZUMhDnLp3uD8JsgnEifMb3sDR6jAu03NPeHG20kK_7WvTxVOjTZaYNLnbEcI-X_G9jbS4LvK0BGj0rI3UBbnqsDTN74ZmrdNATb5iTDt6Ec2q6bwVJKgxS_xo8mb3hSIeBOgnIVBYObrZ3X1XM_E9PVPUXGtFen=1sBA1O5a6JjZlxNMawEkpKgYKmZLVq5x4maL2eXdc2g3HNK6BVtR8cnBl6OhcNdh-_D3uqL578Dwo=8lOo6_1t4CUoAB8FFl6AhX0hyKGZZ68VtXgfQuvoSVUCTovKqXqZ8eKH89FUQlqH6Vn4bH96W1YpZ9uZBkSSFwC6H2YtLWt3sayA0uEY9tQmQshCqiFiA2LpxbQ_OBO0eC9O4j9W442derDiuk9KWDy7ssmHX56HBHB=QpJXXU1px6r6=AxUprGFQWl1vQacsd-hb1TuCZqBotPtsDiC=KA0cpCYfH2C4dN_vrqDsOemjiL2gpErt0bwoCVFX30rQ7Epnj0f7XhNv15bnypNT6RogEgCoegaDX2ilByTWIOXPTbUqFUrvQahrtfF76iZFQ_DxPAf0t37YrcnJ9m_-d36rFdR=Ve9h4yDwKE-UKOGOnssuAFmvmNg=c=ex40E65Y4qR1XVwC-pS3nxSkSw8oF9N=sEgT2deYUgD529ZUATrDZnsj0qtM9hjfJnk53TSgobK6b_LfTf=hUhAA6wwECi=H_=wm5W3K=6LJ=t2kV23RfWb8VcL4KZjUpgUF1-GQ8L0ZAm9_SpXluvh1AOVfGT9xuAUoR0C27M0nnpaNeyriLG_ueNgaSCJ4fiZrhuc442e5XyyF3yrnZk9yA-NhlBbRbVJ1YvdycmApqLsk9n5=LSJPwHhm5CvwYgMdVHyjwmiOIqo8cZtbKgsDYTJI6b-hbr-uAuNpkvYJaoFCTKEQq2ne9urr8w-QhNss4=Vh8EYYp9frpOLw6VyKw9tykod1a5=L=fh76WvJ75uLiPcu6kDqTw8CcfIKJnu3XR7Vo-YMXujB2g9Bv_m4VPU-UqO9KGRrjSjnYx=Z0IHD_Oo-M4TLUWa4ng7IBWjhYdT2YHiqKZ0mupalaIPIvRwYp=mb9whTN4BU-A9xBUfdpdI0vhAj3wdMCohjqVDtc5A_sua4d6bhxIiZpNodWLcGqo_orefQprmKvNg1_MYKOm9l8k9FQxmj=AK8fAxFn0PhaN2FUOS69W8SoxQFsxfFn7iZBBEprBEeZTuvFDsBIZC_=SPUd2fm=7aD2HuiOrlV9yVItQwHLmXugVDJ8HoivYdF4Nxm=Dxd40vWMKWYcD-3WLkfsTRph7HcvXCE_yVFI7J2jHWhoAF5VIIJZGiEP7S32-c1G7wch3-lHsFgTDSqSpvy7l-hZayh=JmlY-QbpGvdhrx56enph3yPXbpwtyUuN61ECnZKQC=5bheEZ4tVRKZcFTfkNmQgY6meAn4wfpNcMNw=NO9YjyLbOurnNuTjs7ZpkDtLKjXCsJ9-0y764F2LeNVVS=58nQhtNaFNsoCF7IcslNvcklVw30cM_72ZUn3UUPlXLiFoxCgM97ouFh09ECPdDOhY=mASJVm1rPxg2U=KDcq0r4HaxTdvFGeMigxFbsk5I5APw9b02D_Vj-7cp0nkskRFpY1fMeb1M4Jc7Os6ATlK=OB3mxLWyY7RGJE92AbGaWLhG4yZcaYlanIr3-t4NVpZLOK9h0SqpO65pYbo8sGYERqf=EjN1b0OaICrOQ9-IUIRKZPD0qYKVUAGNjvs82rrL2wPaB5nJyxqldsOJ=sfpjQPX-Piv2dDAOWtqUkeNpHnXD=eT9svwRsq1NUA2fW6w7bO=o2cEXnDKDMN3or3B7gMlOJKrbAOWHJoBMviptGXeb2SA7YtiS8fJtZxEUub9D6ILPknokhIXX=5P=8X7BBsafWf47_LROerZyJ6rMScQlDiP=Jh7WdgxxFWp8FjOjj344tdW=MItUF2JE_AeeUGx=T9_dY8pF33DKmHZaAX7FBWswRDRKnsy4RgAHvbeC8pD=hg-HT9q56U6_jraJvtCa_jY1fG6chRTu5e7f5UK1FPH73c1NpUDjrogs8HTkfHb-rCE_XRNyIEHvwLtUVm=3uo9qA0ijg-4tkoHnoIl-QK19Um_OnG-Nl1X9A4ISyfme3BDLn-Brt2c9W6wGFRF1SEjTkwo6G7rFW=yBpdBtaaUfFHpBDM8AMWJNhQPLv8nUuMpPa4lb5kE0NEn5QApQjhbo6HFUbQfKW07VyWg131Gk1Cyk2HtAVHCjxc0=x6=ssbmNxNcY-613WVpOyBgasAvOPehEqty_jQY2BvUkfixdnKqoGB9pTuBfsG5RJIADrjBCwjk-NXIMeW6c7bIo45UC0RNPGY61J10s3QRAf0gWMxdmfvtdBVh94DmB0YT38tHGZ1qU2dI9sANQwpAG5dOWk9juiu2limkE6MwOrJJ4scf8SfRWr4BKnrwTIZ6qfd=OnQKgUGMfkXC1UFHa51t-sVk2PFc4wh511IIfSmpTfjHTDH9f8JFtmqWPtRM-gNrAmj8EHEd=dudYwOL24Ih7nvD9BfQNQ2VVMJMETNx28kvrT2EiyCCD4CXEhRBr=VIa5rH0WTn8by=HNMrIcjcm3tNE8KFTw42CPoROjHvqjM1wXrm_PpI=NqYE-QSLf8sR1j6288LPYSN8serqhTSU_gcdRjGRi9M424gy18e-jiJDAJwKQ2L--a1DFg22wE3ea_R=r2K=h=_sfWmvpkncjfduRgAj42xHZiNCeutsOmeS6b_goT-c9tYt7-qR2wVenD2_VaP_j2XOFsnYUD1Ye1Gupi8FITDdFr5QBDlG0s2fFG2eEAcFY1CnII77wXtMJX3VswGBQd8eNU2DyNN96TnE0PQ2O19f06Y=6e6v6WHanDvNgjI_RC1T7dHMSUGvcBpuQV67PtoX3042=K-GUYQji6kIUhYn3lBnm9p0BnMhiFMTLCg1pDqi22XcmUZu0Q3qVQ8B77-Cn4YkivhF2i6DINJuTo-8_1gCgPGlyVt2svVqxDrCgwMSeVFrnplX0WEVaaP9jss2vkMVR14e8F28FhUgXKbLfuF9L2okKVDv0HLC4RU-h2CRG8-Z2Q341B-q9iRqjfbS6=bn-56sJVGc-qQjP7H0HFRVqsp54Df51GryDqL9RK4QbiideAM0ayXXXFvFk60hk7rhOTUN89=bpqsB6L0k2d0j1T8HYH14MupCMTL8YUQifGoMh7JiW6X7lGffKTGlv1oMpb6EinuYZqTgsZ4A8M_7LiONfEsAr5twsch4ncTZyBMOuVMxfaRnOrhkiUGWRQ_vZIb5Jl0yUg8-nnlgsOAfQwR69do-umeMxCkgvfb2B8IiwEHtDVlPXcS6DOqIitBa5c80QX4OyA6YI5-JvUstZdTCdNuZdTwAJuq_86-ujXpj_YdClk0NctBZVEvSlov9_wPlv_uBneDASjpYaohGqIfAoVf1BuWke0vA6YuhfGu9VhKm5-u_taedN7h4R-50weVA0X_tKG_hFlPE7sXQjBDtD6GMXOaQx5ZnR=AaH2L64aKIyV0pT0ekkp5kTDx0ZjpVbeTCSqK8nrvawTgMiMvQ8A36sYFCAOxXFhEB-eb=8fd6RZtgC_ZgVchOKJEaOA5h86DEsg_0r-HDr-xpU-k0LxyS_m5IdlLhI2u8B-0BxSxXgaWvm7YLlPbf4gS1Z8W8g8mfUFBj7HmIHO2LvAkDt0TQfoTRL5gMDZdE_ew4uWUu7ZjmUj2KWWU7KCvNR5erc6uhhf05NVNF7j5jKxFgpL9LcaibTpVuDCMG-CBbrOaFo1X750KGIrLmfl85Z8ydxQ35C13grytkR7tDOM-UJGpjBBuQ0gixYyIE8T50nI=4wbEGbk1GryShiFsNDG7ZlBUtiJWHvKRuVPFJFtXs8TsOWpM8EEBggRp9NoOBvjFh9dXA-wLnfx3dnjyDxvwXNENTqxJsWVqP_QBtnPRbUVof2en31R1GF919ST=3iQ=7CROXl2kw8ug97r5KOiW1IG4eRsNwiFIFWqNcx4tWnJHo_1CJXOLNejCIRcw2LEKmg-rKcn7FXgNC3XLWo4Qq1j0JjZU-HITt=XsMGyKos-2qv2Rx8wfXZFegpJG37695geia05t5qUj8KOXagwT-FdRTmMqM2wc3SFISEGmmjJvxh1ZHbtPbE=Qq2VdLanq2o4985gIvy0pctpYZJMWCMw3JSSA-cBOqI1Gv5l=BolrA2tGhol10pZQwKA=ytowiAtDfZuyNLk_jLyUuaDKveShvpSmpl05pm9xkEdj4vt9UBf-=G5DwHklRnuagcuioRb1Vk0UvwximjD43Vgu9Ugj8WG8uRse=fveOD5fIdVBRKvLVjcfRfkVRAEoMX9n1=w50gbAiKIKbt-WFHgjoGRiltE2jrWlTqUBLqHT=otSnk6-cMm2N52l5LFFfPjRgjmhyfCSCss1noQh4LRiJQgHOYNTUbpXkSFctFkuq1jG2K=NTih9Dag_doEtciJx_8wjUb1X-uUeYwiDF9uGfvepKqj9UyRdJbPfr4S9PYBHq2D_3v4KE4yrkojITfvAM2xpc_8V-hdapiWoAWtVdgWQefv6lU481w-g3K8xA93ug25M0nR2YUF2Kb_inBS4_DiG9mB6FMdL9gga0acml7_Um5WqG5VoAjVD0Gjna01uQ=l-vy",
"user-agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36 Edg/116.0.1938.69"} "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36 Edg/120.0.0.0"}
) )
# headers.pop('xhr_url') # headers.pop('xhr_url')
......
No preview for this file type
...@@ -32,15 +32,15 @@ headers = { ...@@ -32,15 +32,15 @@ headers = {
"x-lll-request-correlation-id": "25536d98-9c05-4a42-a09b-9d9aa629c43d" "x-lll-request-correlation-id": "25536d98-9c05-4a42-a09b-9d9aa629c43d"
} }
headers.update( headers.update(
{"x-dwoclkrx-f": "AwX8qH2NAQAAxBe5-VzGgWq7CzFlxN_KxypDD1jxBm3r8dVGYWVuVUmAVsM4AReeaPiucuKDwH9eCOfvosJeCA==", {
"x-dwoclkrx-b": "-ioegdr", "x-dwoclkrx-c": "AIBGpX2NAQAAhwItfDKDNOIvX--T8djAvxN5Rh0YCfpHEXsP8HUdJOrWiO3-", 'x-dwoclkrx-f': 'AwX8qH2NAQAAxBe5-VzGgWq7CzFlxN_KxypDD1jxBm3r8dVGYWVuVUmAVsM4AReeaPiucuKDwH9eCOfvosJeCA==',
"x-dwoclkrx-d": "ABaAhIDBCKGFgQGAAYIQgISigaIAwBGAzvpCzi_33wd1HSTq1ojt_v____-kmqHPAIU7EBQn3CyUOgrJJSs3nx4", 'x-dwoclkrx-b': 'vpi2hx',
"x-dwoclkrx-z": "q", 'x-dwoclkrx-c': 'AIBGpX2NAQAAhwItfDKDNOIvX--T8djAvxN5Rh0YCfpHEXsP8HUdJOrWiO3-',
"x-dwoclkrx-a": "-fC7j8FsRZX1od1FS47wNfAjWDh1zr0CBYfc5pd-84lRWMfVvoGRuTH3t9iMCD-cwqN2gX3wd3zXh0G=s1r_D3IU8zFcf3zXoQk6L4is0_gsySsU9cbbn855xiXj3zKXzvHv8wyzSjl3j_5T_EXvb=EXX6zLK=SAi7LgLLqc8jn0H5tBzpoS21mK7--4yTJmU5ZaDIAe88gwdHq_A4ZV9vwsj94DSdILjTPgZYgvbU6wE9NV4Z0mZW41Dwb52vXmE5T3=gVKQnpgbMJClXtG8M=PxQvn7ojQqtW3dMlSyV4CuJ9_LJSr_ATuNWI1Ir9IwFhmSJTZVdrW8GZX30wcBnWXVoN-Aki1jZZ4crYheKbuME=US-Mszi8tKAcMqJk6xAUZuBh7GzjtjprJPlIn4jmGRBtHeb4J=HLgJJwmK7JX=jvfAymgDRrctFeoERnpmlY5WfwJD49fz=qpteznc9hsq7UoHZtINTHb95pz9oBzCBX0lRNZBvvCF7MpDLBGJKiuD81INYE7i=oV4VH9No9ttFHW1wxg0z_eKiL9JEEyPrRZNMCoVxSWvbQr0PBr6d-39bQboPRBCMnjpeu1eRBIh6THfQEkjjQTbg9A9WPES0qM4Vjl4kMmW8R014yk3Y382-wRzA1rabLvT=L1Bc2_85YLmFnX_YhrKEmELbAaL6GMCwT-Eoy3IhQXV6aKdAPSBaK6CySXTmchRvBjKfx4jc2_m_NFGiEj9kwvC6cLsxhy1alhm=j3011XTFbHcN-dyc9rCaQWkt6Rf3VHubT0kypatC8e2dss5t_Uow9a8igqjuWNGyUFwIMyIw0qRt0IjUulaHrkaaXNqwE9w_UQaXQzCSgP-PBQp6e-I-n6hMx0wRTLec1nL3nw8-Bstljkrzm96NsuYV13m3fj3fgECDkF4Z9G9Bh2a6MSeUfsxPVdnFeT7pfrW_mxd9Nds1K7JkQbePduRVo1CN4tz_VaVnoXIaN9HagSF=VJYuIBVeAmd4sciA1DAN2_tN_97MkGyoe4Qi_Fx9Qmnjz9ebvIR6RZ93E_y74gfrVaSegcYScorV8tgj3y273uvIbmgbBx6EpAlWz7mT-HrJ6KwgqoGMgIxb=Srl-33t-2Jv3lpIN0ZYxtfAsUQX3DMW2pnhRHvW9XMp-=KMtFVbAAWebRQ=ycC0UFvj1fRHTdGn0ZF_vCvfLvtuI83oJmM=EfSatI86lnmP1UXhVHDFVppAAVP_rnKIxzzy1Zyy0YD380fM_eK4oJZteopCzb3ANmjsIWy0d5NGyHWWeT18hryyHNYM0vwWMgJVN=paphcraJelYDIFP85Yu6nFxollBdAkwNx66GWoP6bwyhW425EMMymw3-I5B2o5DMJ5pKFbifn22Z5AI-of49ngZvAexZQpPrxqF4xZxzAWULzrQV=gmDhevK-K88zcD6D-kMQPaL84gKyo2ATQnt0FiAQyvLlUpeSSmRG9trAKM_N6ZRffxwHat3", 'x-dwoclkrx-d': 'ABaAhIDBCKGFgQGAAYIQgISigaIAwBGAzvpCzi_33wd1HSTq1ojt_v____-kmqHPAIU7EBQn3CyUOgrJJSs3nx4',
"x-dwoclkrx-a0": "zubtlaYu6V4qMYsv_c5X4BHHgVGYgJX9yWv3ggzBpwTqxN3UGpW6zSFXTJcfwnUr1l8JrJDAMz801QYsrNXiV6Pq4rqZCAE0qGcCKgnk=MI2urMTFS0q77fEEorvSb6gVWCd=idv=hK=vCgmN2SieFEza26v3nPRaD0PlHQTINnfRlj6c9-ArQsXKRM3vzv1raRjc72or_uHNx0AYY7InL0mUSL0ANfDswopKS8eIiVTdIBRogHU9K302L0WTWXAayrH0rNjAF0jN5TE3hxjI_u6Q82oIZq8g3iF8FfQzhj0qX5jtLUcEhMrMs6iV2ARHJX0=v--CU_I57as1BqWYaETdIk0QvMPmaH6eEWsc9SvQ3dm1hUKlv9DsJQr98K5HFlCX_l0ftf=qbsL49AGCXuANzWCF_0jC2uorwNmb1-caCri7PUTf2rqZ2WthcH60NCv9IRaJmuso195It-mZU_Mb2SJUpLjlE2qgCLbe6i8PQwIk8wlz6SBZN-VK0iPQhJS3ezrm8XxZoi7I-b1Gph168_Y1S6GHFKMtpbqqtx8=418m51l=RT1g-crviSkkocYlcQzsh=0M==V2euDX5imIeFwn1D-8yqYKuW_S2SldneNPA9zR=DzCNh3YFlXJh7DlX-=l3gvDcstwyAgbVAcVsWuz64efXoJVrpWtdf5j=s-AgT6pEVy4m9J4uIU-RxFNH6EEZhlCGeY47Uko-SKsnlgYRKH2Q=_kM2TITSqi8i=J3JJJs2BLlwe8Kua6KAaRCqhw_Q4xCACzJDZSY9xis6Ql76Pw=dIPRauKCwU5pg0nEdBmpX8a-WMk5ZY4Qv-0T3Cjcy2y744XVHzzvPJacF6PJoazqQl8dJIj4=09D9U_FP-1c2RinhsZKmJhbKvKMDmiplG_wwl-xp=LM24e3gPNSvW_JRw9yrRxxqNPm2-z9rE3RKnaiBMuVWT1QP6owh=q_2FWvzdQWhL0YJpozUlCv-C=hYpzV2m2t60Y12oXLW9K4dSrXDQ-e_qNvhfAxx1GSJqMrYsXiat953QLKmCNrL1vS-7oWlu0LY3bGhyn7KebG25YG4v7QmFK0wY0_HYv5oD37c0-kcFHRmh3K9V2cvsIDBlAgQaP7aRjzk-880IiljYYqZwUBQ0xBl8P6T9zJvexW3VKsuYbATrzLnp=lfYWwJQciR7Ga4Y3LMMb0eua=hotsFT=slnRDAhIARhx05ks3BzW3DnZFjQMSNiQ-8XHgbwfUDMRqFZrf3t9-07f3WF18P-tovs1-jn-cadRf2uDP16BvB-SdN=gJ1u8S=m-VT5Qovl06kg_hDcuoulxj1J6skGCIMRzFhrEfMtf1nakgX8rfgvJFYZaw4hm7LyqALdU==hyRkpiD24sKjGHvLcRku2uYiYegr8kX8WzuvJxli3PGw33mGRRz-DXBvjmsJF5JIz_oAukvl9w94up_Yx-w4oppXHIikoQ_GkSV1mrZYmAGNKUNu=X9w4", 'x-dwoclkrx-z': 'q',
"x-dwoclkrx-a1": "ozcF7rp3JcE3YbA=6Ui029DGxQFUtnQPXnQyD4W7_PIYNnhIHUIz=byR5e_d1srjlC6Ck-fqeKP0xaU-zb6vn20NIGDUoCzoqTq7oHoRnDg8yjH2jaRWHwRRqRzyH_Dc9nBG=RBtXeUarWsWZtCG9ZKngGkiHPq2LtZ8TGNcKAZMb_9dlP=5hdb3RzRQDl9ch0HfeFo7yqbsJPTu=Wm-z9P6kNL8mX4SyLv_6jeqxEHu5ryKqlAiWvlegs3PiEo8oxZ8PaggPoYY_k0NVYIWc=00qz1nlqnuXs5C_RnAQRB1qki0HEwhwCLym1esgvzR=_QQRl_8vAxWeEhRVM4ztn2QgESnMEHA95bBUdx5sNzCG9m4aqeahUxMQnJWorA2BjyxgP5JtlVK-eDLpgwDVPisumr-WM1veoyslxoztZnc2hrDmDY-z3dF-XpyfHSi50Hu1g2VuoHu9YCLw0jWPLqtuhHv3BH4HTupqr0_Nf8ElrIBxTy1zQJH-5=gUsug65EV3JMU_Yy_v5QyvrRoMPxwrYunYq2hqaya3=I1bwADZua=rqil77nzY5xqvtGbDQMSFFXCrUpMqQKvtEN-6Glnl9E9LJnfgQQS7VCfEgLU98cK3oePPJCf8at0uqXVZ7_cYKYfliWmraE2CMlr0UBWzHhdK848G3dZC4PvdP=7l00C2h_eD-pyroz7sop8g=3xDutunHHmlBiYBVdQgPqVsXY0fBMsi5ksvM=Eu5H0aCSQh3Gw_fx5VcI0r4rE5tW=Bh5K1JSeyFCSbrYWTS=_G4WrFs=SXYL-NilZrQAgDBZNJpT-VD5DdqtZPcHS5kugDxaD42KRBbqWeDIRVmh4_k56ulwVHYeLaSeTYmR389eGm=Fiv=zuM=MXnrD9pnEBew8x217jIqk=wdNGr-xARSEltB6V68jXosok_RENl=5pHyhvK4GJMPb_N3uYxgc-SedjsfdA4XhhBlvDjBsx=sVy8Ue18efEAnxPoezH9sdG5GUA5eu=00JhEiq1P39UEBqXBYJFxkMFu463qvy3ZRqGoE4zZJDTfiHdoNdcVxGZ_7qcAh7drfX0l_z0172Dbnk=IQYaVmYirkKc7RWnG=-1Yyz58JQ2YzRjPQWfi_jY-WLgnEXPyICwho9N_sv_qCA72C4my7AJCrxfxjWKVkgCHZ0NF8D_KwQQ24s6nPQaBoB9Wi79CThv6Mn7LC8ZVdSq9Uth8mTv1580BbM4LRox_=PagPKk2FoAXyRHHofMTM8nF87HaybMdSzNK9bX8VC59lZul-1PjuuWeX6j_IbXlUXIV7Fc-0B1riFHj69uxft=qU48=Pbfv0Y3EjqoMGLGmm61N_=eY6LpHVyCkcZsg-w82dMuAVrs9Bl_9gSITWUt8dllfLiqF5uT8f7lpJv7sB8s5iMccJFudgNNCfiV2YeBB_vmdX7vMSV3lZh4XEgfz2bpeRf5z9TCNbzlnRcPv8zwSga_Fb05a2-GfAHf", 'x-dwoclkrx-a': '-8lAgcUtMZK6wj8TkFP3Gzzj8iIGFfEZ8ohZdExkQtVSr9uWa712BLw5xdr6DkRlGaeSKkAitLV27ChVs51thznM1q-2wn0mCYAum-Ul59vcJj1KaBe_p8qkdRTGLnvYY4md2Vi28uafijyickr6qtpoxEMQWWMnpFVuNNjnVZMMel4Pt-GxtbGsUEnrslcA2jKocKvBRcbacxuvBei=dT2djKtvlTKXgceUimIHC8-CkgWAufCbwEB6t=1ftkkF5fB7-4NE2ZgRB_5uU-sZJ4P0W8jx9oIXlNrIRQfBRv5YA8ficz-76cMxDvB3nUStqGP1s9K43AzYU2MFoQ-VtJF9F_vbbGJRXwCezy3yq99iZSZbpuMiIgz7AnL9mHqyGH0u4UcbFshX-Nw88V=Wd0f46dmlgLYDeI=QWofKyyPFl1WNnz_NDtrsCyNYJxMdSzescGUc5dNzKLIfxDUdyK2M_vWk_MZ=1NCEJ7mgVqbMAhIiYIidR-fkZ4FqjPKF83C1hATzNWSmw5ylqmZtjikaiGILQeFHAEfmoYlEmY8R32cIBaFPhK5SqG=5bimnGaBkfBxkqdZ7g5TyCekN=b0zPvEMmxVg6QkruB2JSvCV0Vug7hPEL0LNdoXuStCrUmoWV7k-xCIj_-Muaj19pkozFiJttx6HTajpwg2iJu1xldfEp16_etpcJCCg0l2hfJd=Y7=YlI4nP1nw4F2suySLAYQnsAtvVk-f9-7NXs9kbXgv57keD0rXCwzGPrMr_F_sKkv-W23-aKVzlmD5xCc6JX3xqQ7Rs=Y13fswZs9fBNyUczdmGbU2GDVgqKqnb8CLi8hhlK-1Q2cZhqQwcxb=55xwvRXCnKQTEm-g040pY=46P4u3xtdl38g95mLVj2PI5CIrFEaeatYKYAFl1NVisZRHX-QuZHU2D8UpjwH2gCCA6WsqDGcTo2zagbCFM4t8tpf7XsnnJdEDZ8gAE-hLhy0fBpDbImqh_-4taUCXdwq6gg9x2Qg6GwLUkAeYEis9lSN-sc0qIqkGsp8I84oFSISuT1-NrxrkMucMj30Wai1MssH-0IvpdEdBpIqPubpJd_C0S0jRJguQkJmdkfoeG13qsnDJj4EBmkaVHR5lgWIi3m4bkzj8hpRK8_qT8=SpdPau-w1QsLn-4FGLlqkCy2THBJaPdXezY3WYq7nxqap2qA-XKRinhCXPSxyeGt2eE_XjSGds3BkyIAoSI9YdSD4Wz5ICHT8SSGHxfxCipDaGF7XtmJ6t4THsHfdNBvVY5DSSlqH=9Dp_DeoWmTIdY-=BbKpxDZ1u=jFiV9nWUbPYYZ2frkFcTIqQ6RaZetFSQs166iguF0Rzl6zQpfV2NV0z2jieo1pIxYHIeCJpDwyxM9L=VNvABBf7A0s2yHHJ-csm6gpce7e_gjYPtLxtul9SmUTJCSvkk4WlazfnMAt=3CoDMfYtXa6fq-4LzSJEebpVZPh0_TgQNdviEC2BgLi5',
"x-dwoclkrx-a2": "FITeH0p-FmDAvc9GTc0LxTnGdkrmg9Mk4FNUTIAacIIveJKKrkI15LgoWVNyH-s4HQaFH8Sdy2nktjEdq4C=7vUN3j0ED3cn9zYoDe-fBthqhpN_Hh9Ku_e3xxEo6Qg5iLJpPek5mqba9=LXNGpvhCZVVy_Fngq=Pdw6ZCkvKq-o=VBvvJzKA6cTKqcxiSsrnANSdFm5byVBpjxclathT1EKAljH=oeIGqHcDFJNn0PN6q9Md=UjDk1lZnqirAyRW1aSiWVgcWeinZMTxCRG09cv24q00lqbV4nrrGa18YB23v=nqA=c71IqE-AS95qpLp3qKFDvWRRysklqFDi_Gv_eN3GBKXWEClV7f1eE2r5rxHyzUpzTym-yXuR8dmp-pYNqraAbw7GFHVEDapYfMa2IEsWKR7vU2p-nPZ2_IDjIXjdUYPJpXGYclhIkAb57mtx1ElFz36v4Vg9D2P8grwW0=kbIQ2jjb5yLBECA_FwmetZGNh5J7AzPkPzsSGHWfY-fCvXpKcWf-0IBZ-kj7EdA_z_YAinr5vWG7RyPdbeqPiolMjnwy8hgIJ1nu0EpIMByLx7Jlxa5JLH_SwR7M5o6Qg=KQKRckiiY_eWidTd7r7crWlqg3prFuTX4TBXVJK3ca4gmm3-FiBSrFpZq_wlU2TXXeFogRSwTW6ToFvk=HbLufywojwjY9YBLIfiBRfRyD9gjSVfZiMCjKV8ZdQIvTiZJwgoDs1BJtlbKlb0EGdpg=YBWi=gJfDw1gy60FvcexXvGtWBF007slFraRb5Rba82JJ", 'x-dwoclkrx-a0': 'hDuPh6VFte=7HwYJQ_41f4lK59Q8jLc7QGSsrU-seovvtk7FqH_z1BKB_v6qAtf4mLQUskt7dqQk8l2ELq2Eom7GSl-aGujB8BPQF8cYzwbFyoN-fs1JCVy7jpdIyYMmlN4SSw4bPFf9FGA=s3tn4b74PIaG=7EpDWkzVIcEbA17JNJ8ZDxUvLRNSP6nBy_ydGcJ6Dvwf_5Z=_QGSeAxXFqkewVVsZPyj72xXX33Xh7myp1=EUxFgGU2-Y5xRY-KwGbGKEx8GJoPa84glrkX0zEUCyBMRePHe3WMxRMp-odEZBDc8jdkQ2Fc-H0Ecvx1UIqA0WxCJI-6_Z6'
"user-agent": "Mozilla/5.0 (Linux; Android 13; 22127RK46C Build/TKQ1.220905.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/107.0.5304.141 Mobile Safari/537.36 XWEB/5127 MMWEBSDK/20230604 MMWEBID/7189 MicroMessenger/8.0.38.2400(0x28002639) WeChat/arm64 Weixin NetType/WIFI Language/zh_CN ABI/arm64 qcloudcdn-xinan Request-Source=3 Request-Channel=99"} }
) )
url = "https://shop.lululemon.com/api/graphql" url = "https://shop.lululemon.com/api/graphql"
......
This source diff could not be displayed because it is too large. You can view the blob instead.
...@@ -135,11 +135,11 @@ def md5(text): ...@@ -135,11 +135,11 @@ def md5(text):
return m.hexdigest() return m.hexdigest()
# 连接MongoDB数据库 # 连接MongoDB数据库
client = MongoClient('mongodb://lcc-spider:JIUsfhiad&^@18.144.59.80:27017/?authSource=admin&directConnection=true') client = MongoClient('mongodb://lcc-spider:JIUsfhiad&^@54.183.159.9:27017/?authSource=admin&directConnection=true')
db = client.env db = client.env
# 查询所有文档 # 查询所有文档
#platform.uname().system != 'Darwin' and not #platform.uname().system != 'Darwin' and not
if not pathlib.Path('env.json').exists(): if pathlib.Path('env.json').exists():
# , 'success': {'$gte': 30} # , 'success': {'$gte': 30}
# , 'env.navigatorparams.useragent': {'$regex': 'iPhone'} # , 'env.navigatorparams.useragent': {'$regex': 'iPhone'}
# result = db.env_shape.find({'env.funcs' :{'$ne': None}}) # result = db.env_shape.find({'env.funcs' :{'$ne': None}})
...@@ -182,10 +182,17 @@ headers = { ...@@ -182,10 +182,17 @@ headers = {
"sec-fetch-mode": "cors", "sec-fetch-mode": "cors",
"sec-fetch-site": "same-origin", "sec-fetch-site": "same-origin",
"user-agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36", "user-agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36",
"x-api-key": "l7xx944d175ea25f4b9c903a583ea82a1c4c", "x-api-key": "l7xx2c186c1297274b828b1872e22edfe67a",
"x-app-id": "air-booking", "x-app-version": "62.0.1-5",
"x-channel-id": "southwest", "x-channel-id": "MWEB",
# "x-user-experience-id": "094ff7f7-a044-4b53-973a-b9e4a9374001" "x-diagnostic": "{\"spa\":\"62.0.1-5\"}",
"x-mobile-js": "1",
"x-swa-di-dtid": "d2f6b7400bf3498ba64e331350602346e6cc",
"x-swa-di-pid": "4612543473468643",
"x-swa-di-ue": "",
"x-swa-di-uid": "c78355814f52f95286c14550b90dc12cc1da",
"x-swa-di-usid": "ee4cb0be3b461b3dc1fe6fb27b9f5b021051",
"x-user-experience-id": "8e7c5446-c112-45cc-af19-50f600997153"
} }
# tlss = [ 'chrome_103', 'chrome_104', 'chrome_105', 'chrome_106', # tlss = [ 'chrome_103', 'chrome_104', 'chrome_105', 'chrome_106',
# 'firefox_102', 'firefox_104' # 'firefox_102', 'firefox_104'
...@@ -283,7 +290,7 @@ setTimeout(r=> { ...@@ -283,7 +290,7 @@ setTimeout(r=> {
xhr = new xhr = new
XMLHttpRequest(); XMLHttpRequest();
xhr.open('POST', xhr.open('POST',
"https://www.southwest.com/api/air-booking/v1/air-booking/page/air/booking/shopping", "https://mobile.southwest.com/api/mobile-air-booking/v1/mobile-air-booking/page/view-reservation/2B8NSU",
false); false);
xhr.send(`{"tripType": "oneWay", "from": "ZLA", "to": "NAS", "depart": "2023-04-11", xhr.send(`{"tripType": "oneWay", "from": "ZLA", "to": "NAS", "depart": "2023-04-11",
"cabin": "economy", "refundable": false, "dates": {"before": "3", "after": "3"}, "cabin": "economy", "refundable": false, "dates": {"before": "3", "after": "3"},
...@@ -337,27 +344,12 @@ setTimeout(r=> { ...@@ -337,27 +344,12 @@ setTimeout(r=> {
# headers = r # headers = r
logger.info(f"success:{success} total:{total} {(time.time() - t1) *1000:.3f}ms {len(headers['ee30zvqlwf-a'.lower()])} {selectId} {headers['user-agent']}") logger.info(f"success:{success} total:{total} {(time.time() - t1) *1000:.3f}ms {len(headers['ee30zvqlwf-a'.lower()])} {selectId} {headers['user-agent']}")
url = "https://www.southwest.com/api/air-booking/v1/air-booking/page/air/booking/shopping" url = "https://mobile.southwest.com/api/mobile-air-booking/v1/mobile-air-booking/page/view-reservation/2B8NSU"
data = { data = {
"adultPassengersCount": "1", "firstName": "MsssING",
"adultsCount": "1", "lastName": "SsssG",
"departureDate": "2023-12-22", "recordLocator": "2B228NSU"
"departureTimeOfDay": "ALL_DAY", }
"destinationAirportCode": "LAX",
"fareType": "USD",
"from": "",
"int": "HOMEQBOMAIR",
"originationAirportCode": "LAS",
"passengerType": "ADULT",
"promoCode": "",
"reset": "true",
"returnDate": "2023-08-24",
"returnTimeOfDay": "ALL_DAY",
"to": "",
"tripType": "roundtrip",
"application": "air-booking",
"site": "southwest"
}
data = json.dumps(data) data = json.dumps(data)
# #
# session = requests.Session() # session = requests.Session()
...@@ -401,4 +393,4 @@ setTimeout(r=> { ...@@ -401,4 +393,4 @@ setTimeout(r=> {
# time.sleep(3) # time.sleep(3)
except Exception as e: except Exception as e:
print(e) print(e)
# time.sleep(10) time.sleep(10)
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment