דילוג לתוכן
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
כיווץ
תחומים

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תוכנה
  3. עזרה בהורדה ב PowerShell

עזרה בהורדה ב PowerShell

מתוזמן נעוץ נעול הועבר תוכנה
22 פוסטים 3 כותבים 444 צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • Y מנותק
    Y מנותק
    yits
    השיב לdovid ב נערך לאחרונה על ידי
    #5

    @yossiz
    זה עובד מצוין אבל הוא שומר קודם את הקובץ הריק למחשב.
    מה ש @dovid כתב זה יותר ארוך אבל לא שומר בכלל קבצים ריקים.

    תודה רבה.

    לקניה והנחות ב KSP כנסו מכאן.
    למוצרים עם הנחה מכאן.

    תגובה 1 תגובה אחרונה
    1
    • Y מנותק
      Y מנותק
      yits
      השיב לyossiz ב נערך לאחרונה על ידי
      #6

      @yossiz אמר בעזרה בהורדה ב PowerShell:

      נסה Invoke-WebRequest https://www.google.com בנטפרי

      לא מופיע לי שגיאה.

      PS C:\Users\XXXXX> Invoke-WebRequest https://www.google.com
      
      
      StatusCode        : 200
      StatusDescription : OK
      Content           : <!doctype html><html dir="rtl" itemscope="" itemtype="http://schema.org/WebPage"
                          lang="iw"><head><meta content="text/html; charset=UTF-8" http-equiv="Content-Type"><meta
                          content="/images/branding/goog...
      RawContent        : HTTP/1.1 200 OK
                          X-XSS-Protection: 0
                          X-Frame-Options: SAMEORIGIN
                          Cache-Control: private, max-age=0
                          Content-Type: text/html; charset=UTF-8
                          Date: Tue, 26 May 2020 12:16:31 GMT
                          Expires: -1
                          P3P: CP=...
      Forms             : {f}
      Headers           : {[X-XSS-Protection, 0], [X-Frame-Options, SAMEORIGIN], [Cache-Control, private, max-age=0],
                          [Content-Type, text/html; charset=UTF-8]...}
      Images            : {@{innerHTML=; innerText=; outerHTML=<IMG id=hplogo style="PADDING-BOTTOM: 14px; PADDING-TOP:
                          28px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px" alt=Google
                          src="/images/branding/googlelogo/1x/googlelogo_white_background_color_272x92dp.png" width=272
                          height=92>; outerText=; tagName=IMG; id=hplogo; style=PADDING-BOTTOM: 14px; PADDING-TOP: 28px;
                          PADDING-LEFT: 0px; PADDING-RIGHT: 0px; alt=Google;
                          src=/images/branding/googlelogo/1x/googlelogo_white_background_color_272x92dp.png; width=272;
                          height=92}, @{innerHTML=; innerText=; outerHTML=<IMG id=tsuid1 style="CURSOR: pointer; POSITION:
                          absolute; LEFT: 5px; Z-INDEX: 300; TOP: 4px" alt="" src="/textinputassistant/tia.png" width=27
                          height=23 data-script-url="/textinputassistant/11/iw_tia.js">; outerText=; tagName=IMG; id=tsuid1;
                          style=CURSOR: pointer; POSITION: absolute; LEFT: 5px; Z-INDEX: 300; TOP: 4px; alt=;
                          src=/textinputassistant/tia.png; width=27; height=23;
                          data-script-url=/textinputassistant/11/iw_tia.js}}
      InputFields       : {@{innerHTML=; innerText=; outerHTML=<INPUT type=hidden value=iw name=hl>; outerText=;
                          tagName=INPUT; type=hidden; value=iw; name=hl}, @{innerHTML=; innerText=; outerHTML=<INPUT
                          type=hidden value=hp name=source>; outerText=; tagName=INPUT; type=hidden; value=hp; name=source},
                          @{innerHTML=; innerText=; outerHTML=<INPUT type=hidden name=biw>; outerText=; tagName=INPUT;
                          type=hidden; name=biw}, @{innerHTML=; innerText=; outerHTML=<INPUT type=hidden name=bih>;
                          outerText=; tagName=INPUT; type=hidden; name=bih}...}
      Links             : {@{innerHTML=<SPAN class=gbtb2></SPAN><SPAN class=gbts>חיפוש</SPAN>; innerText=חיפוש; outerHTML=<A
                          onclick=gbar.logger.il(1,{t:1}); id=gb_1 class="gbzt gbz0l gbp1"
                          href="https://www.google.co.il/webhp?tab=ww"><SPAN class=gbtb2></SPAN><SPAN
                          class=gbts>חיפוש</SPAN></A>; outerText=חיפוש; tagName=A; onclick=gbar.logger.il(1,{t:1});;
                          id=gb_1; class=gbzt gbz0l gbp1; href=https://www.google.co.il/webhp?tab=ww}, @{innerHTML=<SPAN
                          class=gbtb2></SPAN><SPAN class=gbts>חיפוש תמונות</SPAN>; innerText=חיפוש תמונות; outerHTML=<A
                          onclick=gbar.logger.il(1,{t:2}); id=gb_2 class=gbzt
                          href="https://www.google.co.il/imghp?hl=iw&amp;tab=wi"><SPAN class=gbtb2></SPAN><SPAN
                          class=gbts>חיפוש תמונות</SPAN></A>; outerText=חיפוש תמונות; tagName=A;
                          onclick=gbar.logger.il(1,{t:2});; id=gb_2; class=gbzt;
                          href=https://www.google.co.il/imghp?hl=iw&amp;tab=wi}, @{innerHTML=<SPAN class=gbtb2></SPAN><SPAN
                          class=gbts>מפות</SPAN>; innerText=מפות; outerHTML=<A onclick=gbar.logger.il(1,{t:8}); id=gb_8
                          class=gbzt href="https://maps.google.co.il/maps?hl=iw&amp;tab=wl"><SPAN class=gbtb2></SPAN><SPAN
                          class=gbts>מפות</SPAN></A>; outerText=מפות; tagName=A; onclick=gbar.logger.il(1,{t:8});; id=gb_8;
                          class=gbzt; href=https://maps.google.co.il/maps?hl=iw&amp;tab=wl}, @{innerHTML=<SPAN
                          class=gbtb2></SPAN><SPAN class=gbts>YouTube</SPAN>; innerText=YouTube; outerHTML=<A
                          onclick=gbar.logger.il(1,{t:36}); id=gb_36 class=gbzt
                          href="https://www.youtube.com/?gl=IL&amp;tab=w1"><SPAN class=gbtb2></SPAN><SPAN
                          class=gbts>YouTube</SPAN></A>; outerText=YouTube; tagName=A; onclick=gbar.logger.il(1,{t:36});;
                          id=gb_36; class=gbzt; href=https://www.youtube.com/?gl=IL&amp;tab=w1}...}
      ParsedHtml        : mshtml.HTMLDocumentClass
      RawContentLength  : 48899
      
      
      

      לקניה והנחות ב KSP כנסו מכאן.
      למוצרים עם הנחה מכאן.

      תגובה 1 תגובה אחרונה
      0
      • Y מנותק
        Y מנותק
        yits
        כתב ב נערך לאחרונה על ידי yits
        #7

        במיקום של השמירה אני משתמש בכמה משתנים וניסיתי לעשות עם פס תחתון והוא זיהה רק את המשתנה השני, ולכן השתמשתי עם רווח.

        -OutFile "$saveFolder\$book\$book_$page.webp"
        

        איך אפשר להשתמש בשניהם יחד?

        .

        אגב המשתנה page הוא מספר רץ אצלי, ואם אני ישתמש איתו גם למה שכתבת כנראה זה לא יעבוד.

        $page = Invoke-WebRequest $url -OutFile "$saveFolder\$book\$book $page.webp" -passThru
        
        

        לקניה והנחות ב KSP כנסו מכאן.
        למוצרים עם הנחה מכאן.

        yossizY תגובה 1 תגובה אחרונה
        0
        • dovidD מנותק
          dovidD מנותק
          dovid ניהול
          כתב ב נערך לאחרונה על ידי
          #8

          @yossiz זה מאפיין בפני עצמו ParsedHtml, לא ככה?

          מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

          בכל נושא אפשר ליצור קשר dovid@tchumim.com

          yossizY תגובה 1 תגובה אחרונה
          1
          • yossizY מנותק
            yossizY מנותק
            yossiz
            השיב לyits ב נערך לאחרונה על ידי yossiz
            #9

            @yits אמר בעזרה בהורדה ב PowerShell:

            אגב המשתנה page הוא מספר רץ אצלי, ואם אני ישתמש איתו גם למה שכתבת כנראה זה לא יעבוד.

            נכון, לא שמתי לב שאתה כבר משתמש במשתנה בשם ‎$page. תן לו שם אחר.

            במיקום של השמירה אני משתמש בכמה משתנים וניסיתי לעשות עם פס תחתון והוא זיהה רק את המשתנה השני, ולכן השתמשתי עם רווח.

            -OutFile "$saveFolder$book$book_$page.webp"

            איך אפשר להשתמש בשניהם יחד?

            זה קורה מסיבה מובנת, כי כאשר powershell נתקל בתו הדולר $ באמצע מחרוזת הוא מתייחס לכל הבא אחריו כחלק משם המשתנה, עד שהוא מגיע לתו שהוא לא חוקי באמצע משתנה. מכיון שתו _ הוא תו חוקי במשתנה, powershell לא יכול לדעת שהוא לא חלק משם המשתנה.
            יש כמה פתרונות, מתוכם

            -OutFile "$saveFolder\$book\$($book)_$page.webp"
            -OutFile ("$saveFolder\$book\$book" + "_$page.webp")
            

            📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

            תגובה 1 תגובה אחרונה
            2
            • yossizY מנותק
              yossizY מנותק
              yossiz
              השיב לdovid ב נערך לאחרונה על ידי
              #10

              @dovid אמר בעזרה בהורדה ב PowerShell:

              @yossiz זה מאפיין בפני עצמו ParsedHtml, לא ככה?

              כן, לא הכרתי. גישה לאחד מתוך כמה מאפיינים באובייקט המוחזר מריץ את ה-JS של הדף. (כמו כן הדפסה לקונסול מריץ את ה-JS כי זה ניגש למאפיינים אלו)

              📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

              תגובה 1 תגובה אחרונה
              1
              • Y מנותק
                Y מנותק
                yits
                השיב לdovid ב נערך לאחרונה על ידי
                #11

                @dovid
                הפתרון שהבאת לא עובד,
                הוא יודע לומר אם הגודל הוא 0 או לא,
                אבל לא ניתן לייצא אותו אח"כ לקובץ.

                זה מה שניסיתי

                $saveFolder = ($pwd).path
                $book = 602285
                $page = 0
                md 602285
                $url = "http://mefo.otzar.org/api/books/$book/$page/image"
                $Responsepage = Invoke-WebRequest $url 
                if ($Responsepage.RawContentLength  -ne 0)
                	{Out-File -FilePath "$saveFolder\$book\$book $page.webp" -InputObject $Responsepage.RawContent}
                else 
                	{break }
                

                לקניה והנחות ב KSP כנסו מכאן.
                למוצרים עם הנחה מכאן.

                dovidD תגובה 1 תגובה אחרונה
                0
                • dovidD מנותק
                  dovidD מנותק
                  dovid ניהול
                  השיב לyits ב נערך לאחרונה על ידי
                  #12

                  @yits "אבל לא ניתן לייצא אותו אח"כ לקובץ"
                  קורה משהו? מנין לך שהבדיקה עובדת?
                  אגב אני כעת רואה שRawContentLength מחזיר את הגודל של התוכן + הכותרות וממילא זה לא הכי מתאים.
                  כמו"כ הRawContent מכיל כותרות יש לשנות אותו לContet.
                  כל זה בלי קשר לבעיה שאתה אומר שזה לא עובד..

                  מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

                  בכל נושא אפשר ליצור קשר dovid@tchumim.com

                  תגובה 1 תגובה אחרונה
                  2
                  • Y מנותק
                    Y מנותק
                    yits
                    כתב ב נערך לאחרונה על ידי yits
                    #13

                    @dovid אמר בעזרה בהורדה ב PowerShell:

                    אני עושה את זה בתוך לולאה, ואם הקובץ ריק הוא יוצא מהלולאה,
                    אבל במקרה שיש תוכן אני לא מצליח לשמור את הנתונים.

                    גם עם Content זה לא עובד.

                    לקניה והנחות ב KSP כנסו מכאן.
                    למוצרים עם הנחה מכאן.

                    yossizY dovidD 2 תגובות תגובה אחרונה
                    0
                    • yossizY מנותק
                      yossizY מנותק
                      yossiz
                      השיב לyits ב נערך לאחרונה על ידי yossiz
                      #14

                      @yits אמר בעזרה בהורדה ב PowerShell:

                      אבל במקרה שיש תוכן אני לא מצליח לשמור את הנתונים.

                      אבל אתה לא מתאר איך ה"לא מצליח" הזה מתממש? יש שגיאה? הקובץ נוצר ריק? הקובץ לא נוצר?

                      📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

                      Y תגובה 1 תגובה אחרונה
                      2
                      • Y מנותק
                        Y מנותק
                        yits
                        השיב לyossiz ב נערך לאחרונה על ידי
                        #15

                        @yossiz אמר בעזרה בהורדה ב PowerShell:

                        @yits אמר בעזרה בהורדה ב PowerShell:

                        אבל במקרה שיש תוכן אני לא מצליח לשמור את הנתונים.

                        אבל אתה לא מתאר איך ה"לא מצליח" הזה מתממש? יש שגיאה? הקובץ נוצר ריק? הקובץ לא נוצר?

                        נוצר קובץ לא תקין.

                        לקניה והנחות ב KSP כנסו מכאן.
                        למוצרים עם הנחה מכאן.

                        dovidD תגובה 1 תגובה אחרונה
                        0
                        • dovidD מנותק
                          dovidD מנותק
                          dovid ניהול
                          השיב לyits ב נערך לאחרונה על ידי dovid
                          #16

                          @yits סוף סוף אתה כותב משהו, לא מתאים לאיש עם ידע טכני כמוך להגיד "לא עובד" כזה סתמי!
                          תשנה את ה$Responsepage.RawContent ל$Responsepage.Content.

                          מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

                          בכל נושא אפשר ליצור קשר dovid@tchumim.com

                          תגובה 1 תגובה אחרונה
                          2
                          • dovidD מנותק
                            dovidD מנותק
                            dovid ניהול
                            השיב לyits ב נערך לאחרונה על ידי
                            #17

                            @yits אמר בעזרה בהורדה ב PowerShell:

                            גם עם Content זה לא עובד.

                            סליחה, החמצתי.
                            אם ככה אני לא יודע.

                            מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

                            בכל נושא אפשר ליצור קשר dovid@tchumim.com

                            תגובה 1 תגובה אחרונה
                            1
                            • yossizY מנותק
                              yossizY מנותק
                              yossiz
                              כתב ב נערך לאחרונה על ידי
                              #18

                              הממ.. זה בעייתי...
                              https://stackoverflow.com/questions/24708859

                              📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

                              תגובה 1 תגובה אחרונה
                              1
                              • yossizY מנותק
                                yossizY מנותק
                                yossiz
                                כתב ב נערך לאחרונה על ידי yossiz
                                #19

                                @yits זה נראה קצת בעייתי להעביר את המידע של Invoke-WebRequest אם זה מידע בינארי כי זה מומר ל-string,
                                נראה לי שהכי קל להשתמש בקוד שלי ולכתוב תנאי אחרי ההורדה שאם ה-contentLength הוא 0 למחוק את הקובץ ולהפסיק את הלולאה.
                                משהו כזה:

                                $ResponsePage = Invoke-WebRequest $url -OutFile "$saveFolder\$book\$book $page.webp" -passThru
                                if ($Responsepage.RawContentLength  -eq 0) {
                                    rm "$saveFolder\$book\$book $page.webp"
                                    break
                                }
                                

                                📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

                                תגובה 1 תגובה אחרונה
                                3
                                • dovidD מנותק
                                  dovidD מנותק
                                  dovid ניהול
                                  כתב ב נערך לאחרונה על ידי
                                  #20

                                  מה זה הסיפור הזה שלח תשובה ריקה? זה לא הכי נורמלי.
                                  זה מחזיר OK כלומר 200? יש מצב לכתובת דוגמה כזו?

                                  כשהכרתי את PowerShell אז התלהבתי שאוכל לעשות בקלות קודים לפעולות קטנות במחשב כיוצא באלו,
                                  אבל איבדתי את ההתלהבות ברגע שגיליתי את LinqPad שמאפשר להריץ בקלות C#.
                                  השפה והשימוש בסקריפטים של powershell או בש (וק"ו batch) ממש קשים לי.

                                  מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

                                  בכל נושא אפשר ליצור קשר dovid@tchumim.com

                                  yossizY תגובה 1 תגובה אחרונה
                                  2
                                  • yossizY מנותק
                                    yossizY מנותק
                                    yossiz
                                    השיב לdovid ב נערך לאחרונה על ידי yossiz
                                    #21

                                    @dovid אמר בעזרה בהורדה ב PowerShell:

                                    מה זה הסיפור הזה שלח תשובה ריקה? זה לא הכי נורמלי.
                                    זה מחזיר OK כלומר 200? יש מצב לכתובת דוגמה כזו?

                                    (אני עונה במקום @yits כי אני יודע באיזה אתר מדובר)
                                    כן, זה מחזיר 200... זה באמת לא הכי נורמלי, אבל מה לעשות... ¯/_(ツ)_\¯

                                    📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

                                    Y תגובה 1 תגובה אחרונה
                                    3
                                    • Y מנותק
                                      Y מנותק
                                      yits
                                      השיב לyossiz ב נערך לאחרונה על ידי
                                      #22

                                      @yossiz @yossiz
                                      עובד לי מצוין (עם הפתרון של @yossiz).

                                      לקניה והנחות ב KSP כנסו מכאן.
                                      למוצרים עם הנחה מכאן.

                                      תגובה 1 תגובה אחרונה
                                      2

                                      • 1
                                      • 2
                                      בא תתחבר לדף היומי!
                                      • התחברות

                                      • אין לך חשבון עדיין? הרשמה

                                      • התחברו או הירשמו כדי לחפש.
                                      • פוסט ראשון
                                        פוסט אחרון
                                      0
                                      • דף הבית
                                      • קטגוריות
                                      • פוסטים אחרונים
                                      • משתמשים
                                      • חיפוש
                                      • חוקי הפורום