Google Drive API תומך במספר דרכים לחיפוש קבצים ותיקיות.
אפשר להשתמש בשיטה files.list
כדי להחזיר את כל הקבצים והתיקיות של המשתמש ב-Drive, או חלק מהם. אפשר גם להשתמש ב-method files.list
כדי לאחזר את ה-fileId
שנדרש ב-methods מסוימות של משאבים (כמו files.get
ו-files.update
).
חיפוש כל הקבצים והתיקיות בתיקיית 'האחסון שלי' של המשתמש הנוכחי
משתמשים ב-method files.list
ללא פרמטרים כדי להחזיר את כל הקבצים והתיקיות.
GET https://www.googleapis.com/drive/v3/files
חיפוש קבצים או תיקיות ספציפיים בתיקיית 'האחסון שלי' של המשתמש הנוכחי
כדי לחפש קבוצה ספציפית של קבצים או תיקיות, משתמשים בשדה q
של מחרוזת השאילתה באמצעות השיטה files.list
כדי לסנן את הקבצים שיוחזרו על ידי שילוב של לפחות מונח חיפוש אחד.
מחרוזת שאילתה מכילה את שלושת החלקים הבאים:
query_term operator values
כאשר:
query_term
הוא מונח השאילתה או השדה לחיפוש.השדה
operator
מציין את התנאי של מונח השאילתה.values
הם הערכים הספציפיים שבהם רוצים להשתמש כדי לסנן את תוצאות החיפוש.
במאמר מונחים ואופרטורים של שאילתות חיפוש תוכלו לראות את המונחים והאופרטורים של השאילתות שבהם אפשר להשתמש כדי לסנן קבצים ותיקיות.
לדוגמה, מחרוזת השאילתה הבאה מסננת את החיפוש כדי להחזיר תיקיות רק על ידי הגדרת סוג MIME:
q: mimeType = 'application/vnd.google-apps.folder'
מידע נוסף על סוגי MIME זמין במאמר סוגי MIME נתמכים ב-Google Workspace וב-Google Drive.
דוגמאות למחרוזות שאילתות
הטבלה הבאה מפרטת דוגמאות לכמה מחרוזות שאילתה בסיסיות. הקוד בפועל משתנה בהתאם לספריית הלקוח שבה משתמשים בחיפוש.
אתם צריכים גם לסמן את התווים המיוחדים בשמות הקבצים בתו בריחה (escape) כדי לוודא שהשאילתה עובדת כמו שצריך. לדוגמה, אם שם קובץ מכיל גם גרש ('
) וגם תו לוכסן הפוך ("\"
), צריך להשתמש בקו נטוי הפוך כדי לסמן אותם בתו בריחה (escape): name
contains 'quinn\'s paper\\essay'
.
מה ברצונך לשלוח שאילתה? | דוגמה |
---|---|
קבצים בשם "hello" | name = 'hello' |
קבצים שהשם שלהם מכיל את המילים 'שלום' ו'להתראות' | name contains 'hello' and name contains 'goodbye' |
קבצים שהשם שלהם לא מכיל את המילה "hello" | not name contains 'hello' |
קבצים שמכילים את הטקסט "חשוב" ונמצאים באשפה | fullText contains 'important' and trashed = true |
קבצים שמכילים את המילה "hello" | fullText contains 'hello' |
קבצים בלי המילה "hello" | not fullText contains 'hello' |
קבצים שמכילים את הביטוי המדויק "שלום עולם" | fullText contains '"hello world"' |
קבצים עם שאילתה שמכילה את התו '\" (לדוגמה, ' \authors') | fullText contains '\\authors' |
קבצים שהם תיקיות | mimeType = 'application/vnd.google-apps.folder' |
קבצים שאינם תיקיות | mimeType != 'application/vnd.google-apps.folder' |
קבצים שהשתנו אחרי תאריך מסוים (אזור הזמן שמוגדר כברירת מחדל הוא UTC) | modifiedTime > '2012-06-04T12:00:00' |
קובצי תמונה או וידאו שנערכו אחרי תאריך מסוים | modifiedTime > '2012-06-04T12:00:00' and (mimeType contains 'image/' or mimeType contains 'video/') |
קבצים שמסומנים בכוכב | starred = true |
קבצים בתוך אוסף (לדוגמה, מזהה התיקייה באוסף parents ) |
'1234567' in parents |
קבצים בתיקיית נתונים של אפליקציות באוסף | 'appDataFolder' in parents |
קבצים שהבעלים שלהם הוא test@example.org | 'test@example.org' in owners |
קבצים שלמשתמש test@example.org יש הרשאת כתיבה | 'test@example.org' in writers |
קבצים שעבורם לחברים בקבוצה 'group@example.org' יש הרשאת כתיבה | 'group@example.org' in writers |
קבצים ששותפו עם המשתמש המורשה עם המילה 'hello' בשם | sharedWithMe and name contains 'hello' |
קבצים עם מאפיין קובץ מותאם אישית שגלויים לכל האפליקציות | properties has { key='mass' and value='1.3kg' } |
קבצים עם מאפיין קובץ מותאם אישית פרטי לאפליקציה ששלחה את הבקשה | appProperties has { key='additionalID' and value='8e8aceg2af2ge72e78' } |
קבצים שלא שותפו עם אף אחד או עם דומיינים (פרטיים בלבד, או שותפו עם קבוצות או משתמשים מסוימים) | visibility = 'limited' |
סינון תוצאות החיפוש באמצעות ספריית לקוח
דוגמת הקוד הבאה מראה איך להשתמש בספריית לקוח כדי לסנן תוצאות חיפוש לפי שמות ומזהים של קובצי JPEG. הדוגמה הזו משתמשת במונח השאילתה mimeType
כדי לצמצם את התוצאות לקבצים מסוג image/jpeg
. היא גם מגדירה את spaces
לערך drive
כדי לצמצם את החיפוש ל שטח האחסון ב-Drive. כש-nextPageToken
מחזירה null
, אין תוצאות נוספות.
Java
Python
Node.js
PHP
חיפוש קבצים עם מאפיין קובץ מותאם אישית
כדי לחפש קבצים עם מאפיין קובץ מותאם אישית, צריך להשתמש במונח שאילתת החיפוש properties
או appProperties
עם מפתח וערך. לדוגמה, כדי לחפש מאפיין של קובץ מותאם אישית שהוא פרטי לאפליקציה שמבקשת גישה, שנקרא additionalID
עם הערך 8e8aceg2af2ge72e78
:
appProperties has { key='additionalID' and value='8e8aceg2af2ge72e78' }
מידע נוסף זמין במאמר הוספת מאפייני קובץ מותאמים אישית.
חיפוש קבצים עם תווית או ערך ספציפיים של שדה
כדי לחפש קבצים עם תוויות ספציפיות, צריך להשתמש במונח labels
של שאילתת החיפוש עם מזהה תווית ספציפי. לדוגמה: 'labels/LABEL_ID' in
labels
. אם הפעולה בוצעה ללא שגיאות, גוף התגובה יכלול את כל המופעים של הקבצים שבהם התווית חלה.
כדי לחפש קבצים ללא מזהה תווית ספציפי: Not
'labels/LABEL_ID' in labels
.
אפשר גם לחפש קבצים לפי ערכים ספציפיים בשדות. לדוגמה, כדי לחפש קבצים עם ערך טקסט: labels/LABEL_ID.text_field_id ='TEXT'
.
מידע נוסף זמין במאמר חיפוש קבצים עם תווית או ערך ספציפיים של שדה.
חיפוש במאגר
חיפושים שקוראים לפונקציה files.list
משתמשים בcorpora
של user
כברירת מחדל. כדי לחפש במאגרי מידע אחרים, כמו קבצים ששותפו עם domain
, צריך להגדיר את הפרמטר corpora
.
אפשר לחפש מספר תאגידים בשאילתה יחידה, אם כי ייתכן שיוחזר תוצאות חלקיות אם הקורפורה המשולבת גדולה מדי. אם בגוף התשובה הערך של incompleteSearch
הוא true
, אז כל המסמכים לא הוחזרו. אם זה קורה, צריך לצמצם את השאילתה על ידי בחירת אוסף אחר כמו user
או drive
.
נושאים קשורים
- חיפוש של תיקיות אחסון שיתופי
- מונחים ואופרטורים של שאילתות חיפוש
- סוגי MIME נתמכים ב-Google Workspace וב-Google Drive
- תפקידים והרשאות
- חיפוש קבצים עם ערך ספציפי של תווית או שדה