המלצה | פרוייקט כלי קודש לוורד - ארגז כלים לעורך התורני
-
@האדם-החושב כתב בהמלצה | פרוייקט כלי קודש לוורד - ארגז כלים לעורך התורני:
@pcinfogmach היברו בוקס הוסיפו לאחרונה שלב ביניים, שכל קריאה טוענת js שלאחר כמה שניות טוען את הדף.
זה לא אמור להיות סיבה ל403, לא?
מקסימום הקוד היה מקבל את הJS במקום את הPDF, או שאתה מתכוון בצד שרת?
@ע-ה-דכו-ע זה תוכן הטקסט של הדף ביניים
<!DOCTYPE html> <html lang="en-US"> <head> <title>Just a moment...</title> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=Edge"> <meta name="robots" content="noindex,nofollow"> <meta name="viewport" content="width=device-width,initial-scale=1"> <style> * { box-sizing: border-box; margin: 0; padding: 0 } html { line-height: 1.15; -webkit-text-size-adjust: 100%; color: #313131; font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji" } body { display: flex; flex-direction: column; height: 100vh; min-height: 100vh } .main-content { margin: 8rem auto; padding-left: 1.5rem; max-width: 60rem } @media (width <=720px) { .main-content { margin-top: 4rem } } .h2 { line-height: 2.25rem; font-size: 1.5rem; font-weight: 500 } @media (width <=720px) { .h2 { line-height: 1.5rem; font-size: 1.25rem } } #challenge-error-text { background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMiIgaGVpZ2h0PSIzMiIgZmlsbD0ibm9uZSI+PHBhdGggZmlsbD0iI0IyMEYwMyIgZD0iTTE2IDNhMTMgMTMgMCAxIDAgMTMgMTNBMTMuMDE1IDEzLjAxNSAwIDAgMCAxNiAzbTAgMjRhMTEgMTEgMCAxIDEgMTEtMTEgMTEuMDEgMTEuMDEgMCAwIDEtMTEgMTEiLz48cGF0aCBmaWxsPSIjQjIwRjAzIiBkPSJNMTcuMDM4IDE4LjYxNUgxNC44N0wxNC41NjMgOS41aDIuNzgzem0tMS4wODQgMS40MjdxLjY2IDAgMS4wNTcuMzg4LjQwNy4zODkuNDA3Ljk5NCAwIC41OTYtLjQwNy45ODQtLjM5Ny4zOS0xLjA1Ny4zODktLjY1IDAtMS4wNTYtLjM4OS0uMzk4LS4zODktLjM5OC0uOTg0IDAtLjU5Ny4zOTgtLjk4NS40MDYtLjM5NyAxLjA1Ni0uMzk3Ii8+PC9zdmc+"); background-repeat: no-repeat; background-size: contain; padding-left: 34px } @media (prefers-color-scheme: dark) { body { background-color: #222; color: #d9d9d9 } } </style> <meta http-equiv="refresh" content="360"> </head> <body> <div class="main-wrapper" role="main"> <div class="main-content"><noscript> <div class="h2"><span id="challenge-error-text">Enable JavaScript and cookies to continue</span></div> </noscript></div> </div> <script>(function () { window._cf_chl_opt = { cvId: '3', cZone: 'download.hebrewbooks.org', cType: 'managed', cRay: '97ce4bedcea95115', cH: 'CQq4MwmG7Pdhcnop7wpfsXhOWIcu65kw6qSkx6JjFx4-1757500715-1.2.1.1-U3bc9kYAfU5fouer8iTJFJzbtWIlmcI8eDMrp8PiPWAMJ4s.7t8fjCs1N5WJglVL', cUPMDTk: "\/downloadhandler.ashx?req=46120.pdf&__cf_chl_tk=9Y2vIzE2veDhZ.D6WPWOxve1yb7YYluH3xFxGVoGZcc-1757500715-1.0.1.1-87wtcnvkZF95btLcy7hiRXZiFCGPtjwjtsHRu_KdqMo", cFPWv: 'g', cITimeS: '1757500715', cTplC: 0, cTplV: 5, cTplB: 'cf', fa: "\/downloadhandler.ashx?req=46120.pdf&__cf_chl_f_tk=9Y2vIzE2veDhZ.D6WPWOxve1yb7YYluH3xFxGVoGZcc-1757500715-1.0.1.1-87wtcnvkZF95btLcy7hiRXZiFCGPtjwjtsHRu_KdqMo", md: 'IDSWWNiJQTY2jSeP__9hx764scC02OSM13pG5M8dKUs-1757500715-1.2.1.1-HLckis284Rs5fkeif449g7uL3Eecm79Aj_PSeMV1DaQN1BayDvaWoPTd6OSv9XxuU3xbEn0UZd3PzoI.oRa7n.CEuxzLt7l7QY02VIiiEev65bASoR.UGHA8iIrMzqMYaaQB2AWJcnvfhVeAGBjgf6y8NqwhVar2TYyRdsIZBczZ_EOJbLgFBh4Two5Z45Sn_VKm9pBuicXRYZiTroIietiQO536xHup3kP3FtSZ4pTS0F.SFfXBb9aUSBamCVlks3VPdNpwyfpRvtR.Knr1V414rEXcTAMpOU5wwzhAmpGM6wdta9ynBlkbzVoAf_ZjxTbSPQUD7ZUa4PdQhkNYlC1gaXwe8FM90fKRXEQtD4ASVYmjtRfCOyDZpKs7tYWYoSBYkoz5tipu.I4k8AM8yfmyiaD28aBogeiBgcAq2yEmq9PVr2UgBrO2bqqyvENqY2bjQ0bd.mkLGHr41eKyyvyW0lUg7O1UiB4Cra3WNQsiRZcN_OMXQBqjgf0e3vvucnLztDu8LnW0YgxG90Ns.V1jkBIsfdxvP0dhi8Q4jgwvv936qpARyzW7K7kA734laTCIL9z2j0GvkPyTP3lb2x5MemK7cbQ9zBPOksbH_GmJrwjfAjfLUjN0NugUDbQNCllGYRG0LgsfnLxy2ZCLtLJ63PQiDlorLzAqZnlbLg.RoCtZTzqzYiP6yi032zcvEcIgY9i8iRbyrThp962o1fZU6AaRonDDFJTrSk3Du.PTwLwv23b8OkGUcTt1oQYmCN9EgTs_JuA3p417NTyetXSCZPWEFRFiyYtEb96faIPNJ1WNCHX2FZWoP7lI27k3n1fiLdt9rkm9ZZ_mJ17nZkGT3mswyENAlT3pGea2ef9KuxzdVoeyIAkNb0E9daSETCgnhbGNeJh3EtI3a7TCC70YemrQ.GRHtMvc6uDElOfJzcBZxpwu2IgRHl3vJg3Q7mSaVZTXQGnwRxlp3ikTOx6kE0qZWvMexj06gSQ13hqMa_rh8pGwpCaBXxbiCTOwGP0cvkkdgg_YKj5wycfAsQP1YKfzNWLyMUg9KvxDe_CSiahZPdOnJGQiSY5qxnakjnYNOYOO27lBCBlmC0efXPo.LB4gmyEVydN0WW2sEmKYU0YyTWTJDrMvOKk4AEGFt2O3NZqv3micAEQN.h.H2w', mdrd: 'rURGYJFXLD72VGC2VHNgBUnq6FpdA75Z4lDG_Ws.h.M-1757500715-1.2.1.1-C4gQd.3IISwlCTsvTxSAda6N53WFNa1W_aeBBHGBQv3RuI5s_0YSDwTc_Hj4gS9Rf4bPnUF4h_3alYtABlQJ6SdkmT8Py1GKfDMPNm2xw.X9ISUFz0tIbZEmySmqqoY9gQYKc0iJblE.XgiXWoPdfuXKnfjw0XSfas.wsFxXrMdkv3IEEhgz0CUNMomn5NA8mIiUwmfl84b.2gpnPvW.4xjTX9ZVMEd.TTeb30Xbd1PLMOC7u0wIJlwdEw31lobNV4QGZ2CegVDFhRAalBDxX10IbtrFadOIeY5FqSg_USYKBUDtaXqzLOFZCGcsTwXSQ5cvWR9zWlEqBqsVYpjvoga1gFhFeGwvHXAvsmh1uyq2DIr59H8rQpxv.tLi0Vsp7ktWLYOu7b.t5MIcySSYqOHAwTJgm_oI9v2RBvFTP4vKh0FKiVvDAGHFtT71PmNIaGBVH1BKTh6_fQUZS6ZPVL3_FkIYVKKhEz07ipUNoUAxoZfGjgrJ9EbdBe6nQ_F70XnWrlw_uO2ioV1_r1YHYFIOXRPZughXA9SWGbzhnGDfVKY6x1ISdZ3J9gCvIY4NZoZVqMdyf.w7ZAI79O_DkatUYReMgJysE4pFLNwTr._NuzxQPkkPfJS6_jfqQTLgEzo_howe8JzbCwEjav8D.X6i9cP6TJhjSSCaaMXz39MdP_eBHpK82Vs7aI7fnF4AF57oIVDNwIpDZQ_AkvxdksuZJXQ6KYOn9TOQTYeD4CG_rXUSWlQC7xBGQgtVqWlYFS_EqLku467Iv5vCOXxPnQ50m4EP.LsB3Dpg37_blCgAcLt4KXkzceZAxIZ.ecEzHICsPDtZg3DbZXjpXiWmCb2SmC0SxsmH5u1w9.P54fzODNFqip0oGBXCju32t_kd2ns8BlXoouGulFFgpViRgaVoYXfLqLmlE5c0x36.jFj.M7ctVhS785n4KHbxYVqYnaY4Yhsr4F2Z5i3QBEifdJo4BPiyy6zZHCZoGgyiwKmSILjcIUK04VxI2mfbT4s1QREh1vtucuJs3.Aq2wYepFLuRVI3NbrOvheRzSXohCPqA8Jfc_DrikEJXSvV4z_Y_NFwY77Yoe1fATMVInno06twe3ZjIUSj.P758nxGMrczPq.DOwQj3vyTvEjggE82S7UZNK_haoLTErVAzWxEFETWyc.kM3tEY2My0Fi2cAH1NoasUfhmdmd_R.PzqaQ.2.YIJI2j0Nx7_2bXT7VexIrOc53Wu2SOACDinjpq88XY61me4HDB5ShYYHUvvhYzOsPpLgvRzxhrL8J2MA.mqZPLGtCVKZ9NOErUqDTFGokT1Zvw_bwofxCrEO4cC.mzJvpudgP1LukUAtQIyaRwdOptMVulGMeAf_Y8PdhdT2QQJ_w3Eu41eTFq8lTZTdLzPsVON6rJIwmhl0j2In4teJidk4b1qYS0f.XbpOaWXPmMaHGa43FGiZOvX3Q8LlCrk1Yh50wZdreZylvCbT4TPEuUP2x_FF.hCPASP7d9d1rnQ_NBUTKzMc7vYGFOeKrHag9UzCgduS.jFYTtw_AKX3RWqN39Rf3F6DYot9kM.WTfUYjxbQ7CXMuj92.582f57GaxhKBcpUavNjm.pwLH01HaAYXK9tTJhkj6sMAR1FkyotDrc4LVHNw7DRk41BAWlBR70FK9yqYgWKVWGRhauh7u1rlUBHB9c9o.UhZKUvXQoB_vFYjwn96W6Qg4L1IlO2K3C5XlSaNnuBanYQYAhZwGduRFcv1ixmG1T_3GxINKTDgJiK2LL5RqhwtplLTpzL8CDuA2AkqzKZrUzEbvlJpHkB_FdNDEzNtSrg9Ept5f1G8ktnZYqWNf1cKpLMGDWHYCuYHBzhuV4gHm0yG7_oNg3WIGC8E2kddY7a8NDjPGNqYtt3Dhp1RHcquwEnBKlvNYC5A4lzbmF2nAVyWPPc3xx65c38s7iaNAnyYQ2Pn63DguMQ83BUryPayLfu6lSBEeY7zR2D0CBHlO7XQfx8xjEjdhHnqvAaskXkXR9JkFfFe4yXyMY.SZLmqGoxyV.CAR2nwsGg6AemUNJq.agU_xdZYHOLttN_qKmlzLIFNse_a7qRX2ZBeWk502NZp_1t_G6EcmnntQvWxKStnQ6LukpeY.tgGa8PGj8Q6fQTIgXWIqCkWzlv_8oNIWvF6n9aCLNuzn31Fvmh0FjbVjVRa3OnsgmZvtEJVMT5ZP188ZS8V.Ql2MEeISLWS7EeJi2yp3PsDWBC1Qe4QVvlRIyeOQRr8Prz15CY6niOaVrBVFKs6DJP5vkfk8edy1dFFM3GBrO0qUoFK6ZqvH9KAZbpkfvjnQnuzsnVtgUhSa_PI3rnjQCtctTzrKNgGY_wqy1UugwQzvTfb1u6mOxjIWwEuac0Gg4txjRGM.dt_8qGjwJI7uPwQOfNPT3vJVNOLw_QaOHIw5Wbpp7eTV2kg_7Q', }; var a = document.createElement('script'); a.src = '/cdn-cgi/challenge-platform/h/g/orchestrate/chl_page/v1?ray=97ce4bedcea95115'; window._cf_chl_opt.cOgUHash = location.hash === '' && location.href.indexOf('#') !== -1 ? '#' : location.hash; window._cf_chl_opt.cOgUQuery = location.search === '' && location.href.slice(0, location.href.length - window._cf_chl_opt.cOgUHash.length).indexOf('?') !== -1 ? '?' : location.search; if (window.history && window.history.replaceState) { var ogU = location.pathname + window._cf_chl_opt.cOgUQuery + window._cf_chl_opt.cOgUHash; history.replaceState(null, null, "\/downloadhandler.ashx?req=46120.pdf&__cf_chl_rt_tk=9Y2vIzE2veDhZ.D6WPWOxve1yb7YYluH3xFxGVoGZcc-1757500715-1.0.1.1-87wtcnvkZF95btLcy7hiRXZiFCGPtjwjtsHRu_KdqMo" + window._cf_chl_opt.cOgUHash); a.onload = function () { history.replaceState(null, null, ogU); } } document.getElementsByTagName('head')[0].appendChild(a); }());</script> </body> </html>
זה עבד בעבר ועכשיו בגלל הדף ביניים נכשל:
import requests headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36' } BASE_URL = "https://download.hebrewbooks.org/downloadhandler.ashx" book_id = "46120" response = requests.get(f"{BASE_URL}?req={book_id}.pdf", headers=headers)
עכשיו זה עובד:
import cloudscraper scraper = cloudscraper.create_scraper() headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36' } BASE_URL = "https://download.hebrewbooks.org/downloadhandler.ashx" book_id = "46120" response = scraper.get(f"{BASE_URL}?req={book_id}.pdf", stream=True, headers=headers)
-
@ע-ה-דכו-ע זה תוכן הטקסט של הדף ביניים
<!DOCTYPE html> <html lang="en-US"> <head> <title>Just a moment...</title> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=Edge"> <meta name="robots" content="noindex,nofollow"> <meta name="viewport" content="width=device-width,initial-scale=1"> <style> * { box-sizing: border-box; margin: 0; padding: 0 } html { line-height: 1.15; -webkit-text-size-adjust: 100%; color: #313131; font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji" } body { display: flex; flex-direction: column; height: 100vh; min-height: 100vh } .main-content { margin: 8rem auto; padding-left: 1.5rem; max-width: 60rem } @media (width <=720px) { .main-content { margin-top: 4rem } } .h2 { line-height: 2.25rem; font-size: 1.5rem; font-weight: 500 } @media (width <=720px) { .h2 { line-height: 1.5rem; font-size: 1.25rem } } #challenge-error-text { background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMiIgaGVpZ2h0PSIzMiIgZmlsbD0ibm9uZSI+PHBhdGggZmlsbD0iI0IyMEYwMyIgZD0iTTE2IDNhMTMgMTMgMCAxIDAgMTMgMTNBMTMuMDE1IDEzLjAxNSAwIDAgMCAxNiAzbTAgMjRhMTEgMTEgMCAxIDEgMTEtMTEgMTEuMDEgMTEuMDEgMCAwIDEtMTEgMTEiLz48cGF0aCBmaWxsPSIjQjIwRjAzIiBkPSJNMTcuMDM4IDE4LjYxNUgxNC44N0wxNC41NjMgOS41aDIuNzgzem0tMS4wODQgMS40MjdxLjY2IDAgMS4wNTcuMzg4LjQwNy4zODkuNDA3Ljk5NCAwIC41OTYtLjQwNy45ODQtLjM5Ny4zOS0xLjA1Ny4zODktLjY1IDAtMS4wNTYtLjM4OS0uMzk4LS4zODktLjM5OC0uOTg0IDAtLjU5Ny4zOTgtLjk4NS40MDYtLjM5NyAxLjA1Ni0uMzk3Ii8+PC9zdmc+"); background-repeat: no-repeat; background-size: contain; padding-left: 34px } @media (prefers-color-scheme: dark) { body { background-color: #222; color: #d9d9d9 } } </style> <meta http-equiv="refresh" content="360"> </head> <body> <div class="main-wrapper" role="main"> <div class="main-content"><noscript> <div class="h2"><span id="challenge-error-text">Enable JavaScript and cookies to continue</span></div> </noscript></div> </div> <script>(function () { window._cf_chl_opt = { cvId: '3', cZone: 'download.hebrewbooks.org', cType: 'managed', cRay: '97ce4bedcea95115', cH: 'CQq4MwmG7Pdhcnop7wpfsXhOWIcu65kw6qSkx6JjFx4-1757500715-1.2.1.1-U3bc9kYAfU5fouer8iTJFJzbtWIlmcI8eDMrp8PiPWAMJ4s.7t8fjCs1N5WJglVL', cUPMDTk: "\/downloadhandler.ashx?req=46120.pdf&__cf_chl_tk=9Y2vIzE2veDhZ.D6WPWOxve1yb7YYluH3xFxGVoGZcc-1757500715-1.0.1.1-87wtcnvkZF95btLcy7hiRXZiFCGPtjwjtsHRu_KdqMo", cFPWv: 'g', cITimeS: '1757500715', cTplC: 0, cTplV: 5, cTplB: 'cf', fa: "\/downloadhandler.ashx?req=46120.pdf&__cf_chl_f_tk=9Y2vIzE2veDhZ.D6WPWOxve1yb7YYluH3xFxGVoGZcc-1757500715-1.0.1.1-87wtcnvkZF95btLcy7hiRXZiFCGPtjwjtsHRu_KdqMo", md: 'IDSWWNiJQTY2jSeP__9hx764scC02OSM13pG5M8dKUs-1757500715-1.2.1.1-HLckis284Rs5fkeif449g7uL3Eecm79Aj_PSeMV1DaQN1BayDvaWoPTd6OSv9XxuU3xbEn0UZd3PzoI.oRa7n.CEuxzLt7l7QY02VIiiEev65bASoR.UGHA8iIrMzqMYaaQB2AWJcnvfhVeAGBjgf6y8NqwhVar2TYyRdsIZBczZ_EOJbLgFBh4Two5Z45Sn_VKm9pBuicXRYZiTroIietiQO536xHup3kP3FtSZ4pTS0F.SFfXBb9aUSBamCVlks3VPdNpwyfpRvtR.Knr1V414rEXcTAMpOU5wwzhAmpGM6wdta9ynBlkbzVoAf_ZjxTbSPQUD7ZUa4PdQhkNYlC1gaXwe8FM90fKRXEQtD4ASVYmjtRfCOyDZpKs7tYWYoSBYkoz5tipu.I4k8AM8yfmyiaD28aBogeiBgcAq2yEmq9PVr2UgBrO2bqqyvENqY2bjQ0bd.mkLGHr41eKyyvyW0lUg7O1UiB4Cra3WNQsiRZcN_OMXQBqjgf0e3vvucnLztDu8LnW0YgxG90Ns.V1jkBIsfdxvP0dhi8Q4jgwvv936qpARyzW7K7kA734laTCIL9z2j0GvkPyTP3lb2x5MemK7cbQ9zBPOksbH_GmJrwjfAjfLUjN0NugUDbQNCllGYRG0LgsfnLxy2ZCLtLJ63PQiDlorLzAqZnlbLg.RoCtZTzqzYiP6yi032zcvEcIgY9i8iRbyrThp962o1fZU6AaRonDDFJTrSk3Du.PTwLwv23b8OkGUcTt1oQYmCN9EgTs_JuA3p417NTyetXSCZPWEFRFiyYtEb96faIPNJ1WNCHX2FZWoP7lI27k3n1fiLdt9rkm9ZZ_mJ17nZkGT3mswyENAlT3pGea2ef9KuxzdVoeyIAkNb0E9daSETCgnhbGNeJh3EtI3a7TCC70YemrQ.GRHtMvc6uDElOfJzcBZxpwu2IgRHl3vJg3Q7mSaVZTXQGnwRxlp3ikTOx6kE0qZWvMexj06gSQ13hqMa_rh8pGwpCaBXxbiCTOwGP0cvkkdgg_YKj5wycfAsQP1YKfzNWLyMUg9KvxDe_CSiahZPdOnJGQiSY5qxnakjnYNOYOO27lBCBlmC0efXPo.LB4gmyEVydN0WW2sEmKYU0YyTWTJDrMvOKk4AEGFt2O3NZqv3micAEQN.h.H2w', mdrd: 'rURGYJFXLD72VGC2VHNgBUnq6FpdA75Z4lDG_Ws.h.M-1757500715-1.2.1.1-C4gQd.3IISwlCTsvTxSAda6N53WFNa1W_aeBBHGBQv3RuI5s_0YSDwTc_Hj4gS9Rf4bPnUF4h_3alYtABlQJ6SdkmT8Py1GKfDMPNm2xw.X9ISUFz0tIbZEmySmqqoY9gQYKc0iJblE.XgiXWoPdfuXKnfjw0XSfas.wsFxXrMdkv3IEEhgz0CUNMomn5NA8mIiUwmfl84b.2gpnPvW.4xjTX9ZVMEd.TTeb30Xbd1PLMOC7u0wIJlwdEw31lobNV4QGZ2CegVDFhRAalBDxX10IbtrFadOIeY5FqSg_USYKBUDtaXqzLOFZCGcsTwXSQ5cvWR9zWlEqBqsVYpjvoga1gFhFeGwvHXAvsmh1uyq2DIr59H8rQpxv.tLi0Vsp7ktWLYOu7b.t5MIcySSYqOHAwTJgm_oI9v2RBvFTP4vKh0FKiVvDAGHFtT71PmNIaGBVH1BKTh6_fQUZS6ZPVL3_FkIYVKKhEz07ipUNoUAxoZfGjgrJ9EbdBe6nQ_F70XnWrlw_uO2ioV1_r1YHYFIOXRPZughXA9SWGbzhnGDfVKY6x1ISdZ3J9gCvIY4NZoZVqMdyf.w7ZAI79O_DkatUYReMgJysE4pFLNwTr._NuzxQPkkPfJS6_jfqQTLgEzo_howe8JzbCwEjav8D.X6i9cP6TJhjSSCaaMXz39MdP_eBHpK82Vs7aI7fnF4AF57oIVDNwIpDZQ_AkvxdksuZJXQ6KYOn9TOQTYeD4CG_rXUSWlQC7xBGQgtVqWlYFS_EqLku467Iv5vCOXxPnQ50m4EP.LsB3Dpg37_blCgAcLt4KXkzceZAxIZ.ecEzHICsPDtZg3DbZXjpXiWmCb2SmC0SxsmH5u1w9.P54fzODNFqip0oGBXCju32t_kd2ns8BlXoouGulFFgpViRgaVoYXfLqLmlE5c0x36.jFj.M7ctVhS785n4KHbxYVqYnaY4Yhsr4F2Z5i3QBEifdJo4BPiyy6zZHCZoGgyiwKmSILjcIUK04VxI2mfbT4s1QREh1vtucuJs3.Aq2wYepFLuRVI3NbrOvheRzSXohCPqA8Jfc_DrikEJXSvV4z_Y_NFwY77Yoe1fATMVInno06twe3ZjIUSj.P758nxGMrczPq.DOwQj3vyTvEjggE82S7UZNK_haoLTErVAzWxEFETWyc.kM3tEY2My0Fi2cAH1NoasUfhmdmd_R.PzqaQ.2.YIJI2j0Nx7_2bXT7VexIrOc53Wu2SOACDinjpq88XY61me4HDB5ShYYHUvvhYzOsPpLgvRzxhrL8J2MA.mqZPLGtCVKZ9NOErUqDTFGokT1Zvw_bwofxCrEO4cC.mzJvpudgP1LukUAtQIyaRwdOptMVulGMeAf_Y8PdhdT2QQJ_w3Eu41eTFq8lTZTdLzPsVON6rJIwmhl0j2In4teJidk4b1qYS0f.XbpOaWXPmMaHGa43FGiZOvX3Q8LlCrk1Yh50wZdreZylvCbT4TPEuUP2x_FF.hCPASP7d9d1rnQ_NBUTKzMc7vYGFOeKrHag9UzCgduS.jFYTtw_AKX3RWqN39Rf3F6DYot9kM.WTfUYjxbQ7CXMuj92.582f57GaxhKBcpUavNjm.pwLH01HaAYXK9tTJhkj6sMAR1FkyotDrc4LVHNw7DRk41BAWlBR70FK9yqYgWKVWGRhauh7u1rlUBHB9c9o.UhZKUvXQoB_vFYjwn96W6Qg4L1IlO2K3C5XlSaNnuBanYQYAhZwGduRFcv1ixmG1T_3GxINKTDgJiK2LL5RqhwtplLTpzL8CDuA2AkqzKZrUzEbvlJpHkB_FdNDEzNtSrg9Ept5f1G8ktnZYqWNf1cKpLMGDWHYCuYHBzhuV4gHm0yG7_oNg3WIGC8E2kddY7a8NDjPGNqYtt3Dhp1RHcquwEnBKlvNYC5A4lzbmF2nAVyWPPc3xx65c38s7iaNAnyYQ2Pn63DguMQ83BUryPayLfu6lSBEeY7zR2D0CBHlO7XQfx8xjEjdhHnqvAaskXkXR9JkFfFe4yXyMY.SZLmqGoxyV.CAR2nwsGg6AemUNJq.agU_xdZYHOLttN_qKmlzLIFNse_a7qRX2ZBeWk502NZp_1t_G6EcmnntQvWxKStnQ6LukpeY.tgGa8PGj8Q6fQTIgXWIqCkWzlv_8oNIWvF6n9aCLNuzn31Fvmh0FjbVjVRa3OnsgmZvtEJVMT5ZP188ZS8V.Ql2MEeISLWS7EeJi2yp3PsDWBC1Qe4QVvlRIyeOQRr8Prz15CY6niOaVrBVFKs6DJP5vkfk8edy1dFFM3GBrO0qUoFK6ZqvH9KAZbpkfvjnQnuzsnVtgUhSa_PI3rnjQCtctTzrKNgGY_wqy1UugwQzvTfb1u6mOxjIWwEuac0Gg4txjRGM.dt_8qGjwJI7uPwQOfNPT3vJVNOLw_QaOHIw5Wbpp7eTV2kg_7Q', }; var a = document.createElement('script'); a.src = '/cdn-cgi/challenge-platform/h/g/orchestrate/chl_page/v1?ray=97ce4bedcea95115'; window._cf_chl_opt.cOgUHash = location.hash === '' && location.href.indexOf('#') !== -1 ? '#' : location.hash; window._cf_chl_opt.cOgUQuery = location.search === '' && location.href.slice(0, location.href.length - window._cf_chl_opt.cOgUHash.length).indexOf('?') !== -1 ? '?' : location.search; if (window.history && window.history.replaceState) { var ogU = location.pathname + window._cf_chl_opt.cOgUQuery + window._cf_chl_opt.cOgUHash; history.replaceState(null, null, "\/downloadhandler.ashx?req=46120.pdf&__cf_chl_rt_tk=9Y2vIzE2veDhZ.D6WPWOxve1yb7YYluH3xFxGVoGZcc-1757500715-1.0.1.1-87wtcnvkZF95btLcy7hiRXZiFCGPtjwjtsHRu_KdqMo" + window._cf_chl_opt.cOgUHash); a.onload = function () { history.replaceState(null, null, ogU); } } document.getElementsByTagName('head')[0].appendChild(a); }());</script> </body> </html>
זה עבד בעבר ועכשיו בגלל הדף ביניים נכשל:
import requests headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36' } BASE_URL = "https://download.hebrewbooks.org/downloadhandler.ashx" book_id = "46120" response = requests.get(f"{BASE_URL}?req={book_id}.pdf", headers=headers)
עכשיו זה עובד:
import cloudscraper scraper = cloudscraper.create_scraper() headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36' } BASE_URL = "https://download.hebrewbooks.org/downloadhandler.ashx" book_id = "46120" response = scraper.get(f"{BASE_URL}?req={book_id}.pdf", stream=True, headers=headers)
אז תכתוב שיש אימות נוסף, לא JS נוסף
יש ספריה לעקיפת האימות הזו גם בNET
Install-Package CloudflareSolverRe
ואח"כ צריך להוסיף בתחילת הקובץ
using CloudflareSolverRe;
ובקוד עצמו לשנות ככה:
string url = $"https://download.hebrewbooks.org/downloadhandler.ashx?req={entry.ID_Book}"; string fileName = $"{entry.ID_Book}.pdf"; string downloadPath = Path.Combine(Path.GetTempPath(), fileName); if (!File.Exists(downloadPath)) { var handler = new ClearanceHandler { MaxTries = 3, ClearanceDelay = 3000 }; //var handler = new HttpClientHandler { UseCookies = true }; using (HttpClient client = new HttpClient(handler)) { client.DefaultRequestHeaders.Add("User-Agent", "Mozilla/5.0 ..."); client.DefaultRequestHeaders.Add("Referer", "https://www.hebrewbooks.org/"); byte[] fileBytes = await client.GetByteArrayAsync(url); File.WriteAllBytes(downloadPath, fileBytes); } }
@pcinfogmach עשיתי לך PR בגיטהב.
לא הצלחתי לבדוק אם זה עובד בפועל, כי היו לי הרבה ספריות אחרות חסרות שמשום מה לא הותקנו, אז תבדוק את זה.
אגב, @האדם-החושב הקוד שהבאת עובד לך, או אמור לעבוד? כי הוספת שם PDF בסוף הURL, זה אמור להחזיר 404
-
אז תכתוב שיש אימות נוסף, לא JS נוסף
יש ספריה לעקיפת האימות הזו גם בNET
Install-Package CloudflareSolverRe
ואח"כ צריך להוסיף בתחילת הקובץ
using CloudflareSolverRe;
ובקוד עצמו לשנות ככה:
string url = $"https://download.hebrewbooks.org/downloadhandler.ashx?req={entry.ID_Book}"; string fileName = $"{entry.ID_Book}.pdf"; string downloadPath = Path.Combine(Path.GetTempPath(), fileName); if (!File.Exists(downloadPath)) { var handler = new ClearanceHandler { MaxTries = 3, ClearanceDelay = 3000 }; //var handler = new HttpClientHandler { UseCookies = true }; using (HttpClient client = new HttpClient(handler)) { client.DefaultRequestHeaders.Add("User-Agent", "Mozilla/5.0 ..."); client.DefaultRequestHeaders.Add("Referer", "https://www.hebrewbooks.org/"); byte[] fileBytes = await client.GetByteArrayAsync(url); File.WriteAllBytes(downloadPath, fileBytes); } }
@pcinfogmach עשיתי לך PR בגיטהב.
לא הצלחתי לבדוק אם זה עובד בפועל, כי היו לי הרבה ספריות אחרות חסרות שמשום מה לא הותקנו, אז תבדוק את זה.
אגב, @האדם-החושב הקוד שהבאת עובד לך, או אמור לעבוד? כי הוספת שם PDF בסוף הURL, זה אמור להחזיר 404
פוסט זה נמחק! -
אז תכתוב שיש אימות נוסף, לא JS נוסף
יש ספריה לעקיפת האימות הזו גם בNET
Install-Package CloudflareSolverRe
ואח"כ צריך להוסיף בתחילת הקובץ
using CloudflareSolverRe;
ובקוד עצמו לשנות ככה:
string url = $"https://download.hebrewbooks.org/downloadhandler.ashx?req={entry.ID_Book}"; string fileName = $"{entry.ID_Book}.pdf"; string downloadPath = Path.Combine(Path.GetTempPath(), fileName); if (!File.Exists(downloadPath)) { var handler = new ClearanceHandler { MaxTries = 3, ClearanceDelay = 3000 }; //var handler = new HttpClientHandler { UseCookies = true }; using (HttpClient client = new HttpClient(handler)) { client.DefaultRequestHeaders.Add("User-Agent", "Mozilla/5.0 ..."); client.DefaultRequestHeaders.Add("Referer", "https://www.hebrewbooks.org/"); byte[] fileBytes = await client.GetByteArrayAsync(url); File.WriteAllBytes(downloadPath, fileBytes); } }
@pcinfogmach עשיתי לך PR בגיטהב.
לא הצלחתי לבדוק אם זה עובד בפועל, כי היו לי הרבה ספריות אחרות חסרות שמשום מה לא הותקנו, אז תבדוק את זה.
אגב, @האדם-החושב הקוד שהבאת עובד לך, או אמור לעבוד? כי הוספת שם PDF בסוף הURL, זה אמור להחזיר 404
@ע-ה-דכו-ע כתב בהמלצה | פרוייקט כלי קודש לוורד - ארגז כלים לעורך התורני:
אגב, @האדם-החושב הקוד שהבאת עובד לך, או אמור לעבוד? כי הוספת שם PDF בסוף הURL, זה אמור להחזיר 404
צודק, צריך להוריד את ה.pdf, פשוט העתקתי את זה מקוד אחר שיש לי.
אז תכתוב שיש אימות נוסף, לא JS נוסף
לדעתי זה לא בדיוק אימות, זה js שמחזיר את הpdf ואם אתה עושה בקשה רגילה בלי השהייה אתה יוצא רק עם הjs ביד.
-
@ע-ה-דכו-ע כתב בהמלצה | פרוייקט כלי קודש לוורד - ארגז כלים לעורך התורני:
אגב, @האדם-החושב הקוד שהבאת עובד לך, או אמור לעבוד? כי הוספת שם PDF בסוף הURL, זה אמור להחזיר 404
צודק, צריך להוריד את ה.pdf, פשוט העתקתי את זה מקוד אחר שיש לי.
אז תכתוב שיש אימות נוסף, לא JS נוסף
לדעתי זה לא בדיוק אימות, זה js שמחזיר את הpdf ואם אתה עושה בקשה רגילה בלי השהייה אתה יוצא רק עם הjs ביד.
@האדם-החושב כתב בהמלצה | פרוייקט כלי קודש לוורד - ארגז כלים לעורך התורני:
@ע-ה-דכו-ע כתב בהמלצה | פרוייקט כלי קודש לוורד - ארגז כלים לעורך התורני:
אז תכתוב שיש אימות נוסף, לא JS נוסף
לדעתי זה לא בדיוק אימות, זה js שמחזיר את הpdf ואם אתה עושה בקשה רגילה בלי השהייה אתה יוצא רק עם הjs ביד.
זה בדיוק מה שכתבתי לך לפני, שאם כן זה לא היה מחזיר 403 אלא JS, אבל זה באמת JS שצריך להריץ, ורק מי שמריץ אותו מקבל אישור להמשיך הלאה, וכיון שהסיפריה הרגילה של HTTP לא יודעת להריץ JS היא לא מקבלת אישור ומחזיר 403, שזה קוד שמשמעותו "לא מורשה".
-
יאללה חברה באמת שאין לי זמן לזה איתכם הסליחה
כנ"ל אחרי החגים בלי נדר אנסה להתעסק עם זהותודה לכל המשיבים מקווה שזה הכיוון לפתור את הבעיה
-
פוסט זה נמחק!
-
פוסט זה נמחק!
@שמעון-פרידנן כמדומני שככה זה בוורד, כלומר לא ניתן לשינוי (כנראה).
זה נחשב כמו שני מקטעים שונים (מה שנכון) והמספור שלהם מתבצע כל אחד בנפרד. -
@שמעון-פרידנן כמדומני שככה זה בוורד, כלומר לא ניתן לשינוי (כנראה).
זה נחשב כמו שני מקטעים שונים (מה שנכון) והמספור שלהם מתבצע כל אחד בנפרד.פוסט זה נמחק! -
פוסט זה נמחק!
@שמעון-פרידמן
אשמח אם תפתח נושא חדש עבור הבעיה שהצגת.
כדי לוודא שאשים לב לשאלתך, תמיד תוכל לתייג אותי.תודה על ההבנה
לצערי אין לי ידע מעמיק בנושא תיבות טקסט.