PowerShell ואת שירות האינטרנט אמזון


יש לי כמה חוויות עם Amazon Web Service כאשר יצרתי אנימה אתר ביקורות שלי. זה די מסודר כי אתה יכול לכתוב שאילתה כדי לחפש מאוד מידע מפורט על המוצרים. לאחרונה, אני חושב לקנות StreetPilot Garmin i3 מ אמזון.

i3.jpg

המחיר הרגיל הוא סביב 308.00 $, אבל שמעתי שלפעמים אמזון יורידו את המחיר נמוך ככל 199.00 $. עם זאת, המחיר הנמוך זמין רק לזמן קצר. אני לא רוצה לשבת מול המחשב שלי לבדוק באופן ידני את המחיר בעצמי. האם זה לא יהיה נחמד אם אני יכול לקבל סקריפט כדי לבדוק את המחיר באופן אוטומטי? זה יהיה נחמד אם אני לכתוב את התסריט באמצעות PowerShell!

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

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

שירות אמזון האינטרנט מציע מספר דרכים למצוא מידע המוצר. ItemSearch המשמש חיפוש מוצרים באמצעות מילות מפתח. מאז אנחנו כבר יודעים את המוצר שאנו מעוניינים, אנחנו יכולים פשוט להשתמש ItemLookup. כדי להשתמש ItemLookup, אתה צריך שתי פיסות מידע, AWSAccessKeyId ו ItemId. יש לך כבר את מפתח גישה מזהה, כל מה שאתה צריך לדעת הוא ItemId עבור המוצר. כל המוצרים המוצעים על אמזון מזהה ייחודי. אם מסתכלים על דף מוצר, זה נקרא פרק. אתה משתמש בתור פרק ItemId עבור השאילתה. עבור שאילתת ספרים, ISBN כמו ItemId להשתמש בשאילתה שלך. זוהי מחרוזת שאילתה עבור להרים את המידע עבור Garmin i3.

 $ url = "http://webservices.amazon.com/onca/xml?Service=AWSECommerceService" $ url + = "& AWSAccessKeyId = Your_AccessKeyID_Here" $ url + = "& מבצע ItemLookup =" $ url + = "& itemid = B000ACHVVE" $ url + = "& = ResponseGroup לעסקים" 

שים לב כי זוהי www.amazon.com עבור צפון אמריקה. אם אתה רוצה מידע המוצר שאילתה עבור אתרים אחרים אמזון. אתה צריך לשנות את השורה הראשונה בהתאם. אתה יכול לבדוק כאן לקבלת מידע על אופן שינוי מחרוזת שאילתה. נקודה נוספת שחשוב לציין הוא כי אם לא תציין ResponseGroup בשאילתה שלך, את התגובה ברירת המחדל היא "בקשה" ו "קטנים" אשר אין לי מידע מחיר. כדי לקבל את המחיר הנוכחי, אנו משתמשים "לעסקים" כקבוצה בתגובה. לבסוף, אנו משתמשים. השיעור נטו של Net.WebClient לקבל תגובת Amazon Web Service. התגובה מהשרת היא מחרוזת XML. אנחנו יכולים להפיל אותו XMLDocument גישה קלה לנתונים. הסכום חזר השאילתה הוא סנט, כך מחלקים ב -100 כדי לקבל את הסכום.

  $ rxml = [XML] (-Net.WebClient אובייקט חדש). DownloadString ( "$ url")

 מחיר $ = $ rxml.ItemLookupResponse.Items.Item.Offers.Offer.OfferListing.Price.Amount

 מחיר $ = $ price/100

 הד $ מחיר 

אתם עשויים לשאול: איך אתה בא עם מחיר ההצעה? אתה יכול לבדוק את התיעוד של אמזון באתר האינטרנט שירות האינטרנט, או באפשרותך לשמור את התגובה כמו קובץ XML ולהשתמש בעורך האהוב עליך XML / הקורא לבחון את התגובה. Firefox הוא בסדר גמור כדי לנתח את קובץ ה-XML.

  sxml $ = (-Net.WebClient אובייקט חדש). DownloadString ( "$ url")

 הד $ sxml> "C: \ \ response.xml" 

בדקתי את התסריט תחת Vista Beta 2 וזה עובד היטב.

הודעות קשורות

  • לא קשורים פוסט

השאירו תגובה

קבל את התוכנה Adobe Flash Player Plugin לפי נושאים WordPress wpburn.com