หมายเหตุ
การเข้าถึงหน้านี้ต้องได้รับการอนุญาต คุณสามารถลอง ลงชื่อเข้าใช้หรือเปลี่ยนไดเรกทอรีได้
การเข้าถึงหน้านี้ต้องได้รับการอนุญาต คุณสามารถลองเปลี่ยนไดเรกทอรีได้
Web.Contents, Web.BrowserContents และ Web.Page ต่างกันอย่างไร
-
Web.Contentsใช้สําหรับดึงเนื้อหาเว็บที่ไม่จําเป็นต้องเข้าถึงผ่านเบราว์เซอร์ เช่น ไฟล์ CSV, ผลลัพธ์ JSON API และอื่นๆ - รองรับตัวเลือกการรับรองความถูกต้องที่หลากหลายที่สุด
- สามารถใช้ในสภาพแวดล้อมระบบคลาวด์ เช่น Power Query Online โดยไม่ต้องใช้เกตเวย์
-
Web.Pageเป็นฟังก์ชันดั้งเดิมสําหรับการดึงเนื้อหาเว็บที่ต้องเข้าถึงผ่านเบราว์เซอร์ เช่น หน้า HTML - สร้างขึ้นบน Internet Explorer เนื่องจากข้อกําหนดนี้ จึงถูกแทนที่ใน UI ด้วย
Web.BrowserContentsอย่างไรก็ตามWeb.Pageยังคงมีให้ใช้งานในระดับเครื่องยนต์เพื่อความเข้ากันได้แบบย้อนหลัง - จําเป็นต้องมีเกตเวย์เพื่อใช้ในสภาพแวดล้อมระบบคลาวด์ เช่น Power Query Online
-
Web.BrowserContentsเป็นฟังก์ชันที่อัปเดตสําหรับการดึงเนื้อหาเว็บที่ต้องเข้าถึงผ่านเบราว์เซอร์ เช่น หน้า HTML - ใน UI
Web.BrowserContentsกําลังแทนที่Web.Pageเนื่องจากWeb.Pageใช้ Internet Explorer -
Web.BrowserContentsเดิมสร้างขึ้นบน Chromium แต่ตอนนี้ใช้การควบคุม WebView2 ของ Microsoft Edge - จําเป็นต้องมีเกตเวย์เพื่อใช้ในสภาพแวดล้อมระบบคลาวด์ เช่น Power Query Online
ตารางต่อไปนี้สรุปความแตกต่าง
| เว็บ.สารบัญ | Web.Page | Web.Browser เนื้อหา | |
|---|---|---|---|
| เนื้อหาที่ไม่ใช่เบราว์เซอร์ (ไฟล์.txt/.csv, JSON และอื่นๆ) | x | ||
| เนื้อหาเบราว์เซอร์ (HTML) | x | x | |
| รองรับประเภทการรับรองความถูกต้อง | ไม่ระบุชื่อ Windows พื้นฐาน API เว็บ บัญชีองค์กร |
ไม่ระบุชื่อ Windows (ข้อมูลประจําตัวของผู้ใช้ปัจจุบันเท่านั้น) API เว็บ |
ไม่ระบุชื่อ Windows พื้นฐาน API เว็บ |
| ต้องใช้เกตเวย์ในโฮสต์คลาวด์ | N | Y | Y |
| ปัจจุบันสร้างโดย | เจ้าของที่พักทั้งหมด | Excel และ Power Query Online | Power BI Desktop |
| สร้างขึ้นบน | .NET | อินเทอร์เน็ตเอ็กซ์พลอเรอร์ | การควบคุม WebView2 ของ Microsoft Edge |
Note
คําขอ POST สามารถทําได้โดยไม่ระบุตัวตนเมื่อใช้Web.Contents
คําเตือน "เบราว์เซอร์นี้ไม่ได้รับการสนับสนุนอีกต่อไป" ในมุมมองเว็บ
เมื่อนําเข้าหน้าเว็บ คุณสามารถดูตัวอย่างของหน้าโดยใช้แท็บ มุมมองเว็บ ในกล่องโต้ตอบตัวนําทางของ Power Query บางครั้งการแสดงตัวอย่างนี้อาจแสดงคําเตือน เช่น "เบราว์เซอร์นี้ไม่รองรับอีกต่อไป" เมื่อคําเตือนนี้เกิดขึ้น มักเป็นเพราะมุมมองเว็บแสดงตัวอย่างมุมมองเว็บโดยใช้ Internet Explorer ซึ่งบางเว็บไซต์ไม่รองรับอีกต่อไป อย่างไรก็ตาม คําเตือนนี้จะส่งผลต่อมุมมองเว็บเท่านั้น และไม่ส่งผลต่อตัวเชื่อมต่อเว็บเอง ตราบใดที่คุณใช้ตัวเชื่อมต่อตาม Web.Contents หรือ Web.BrowserContents (ไม่ใช่ Web.Page) คุณสามารถเพิกเฉยต่อคําเตือนดังกล่าวได้อย่างปลอดภัย สําหรับข้อมูลเพิ่มเติมเกี่ยวกับตัวเชื่อมต่อเว็บต่างๆ และเทคโนโลยีพื้นฐาน ให้ไปที่ Web.Contents, Web.BrowserContents และ Web.Page แตกต่างกันอย่างไร
การจัดการหน้าเว็บแบบไดนามิก
เว็บเพจที่โหลดเนื้อหาแบบไดนามิกอาจต้องมีการจัดการพิเศษ หากคุณสังเกตเห็นข้อผิดพลาดเป็นระยะๆ ในการค้นหาเว็บ อาจเป็นไปได้ว่าคุณกําลังพยายามเข้าถึงหน้าเว็บแบบไดนามิก ตัวอย่างทั่วไปของข้อผิดพลาดประเภทนี้คือ:
- คุณรีเฟรชแบบสอบถามที่เชื่อมต่อกับไซต์
- คุณเห็นข้อผิดพลาด (ตัวอย่างเช่น "ไม่พบคอลัมน์ 'Foo' ของตาราง")
- คุณรีเฟรชแบบสอบถามอีกครั้ง
- ไม่มีข้อผิดพลาดเกิดขึ้น
ปัญหาประเภทนี้มักเกิดจากเวลา หน้าเว็บที่โหลดเนื้อหาแบบไดนามิกในบางครั้งอาจไม่สอดคล้องกัน เนื่องจากเนื้อหาอาจเปลี่ยนแปลงได้หลังจากที่เบราว์เซอร์พิจารณาว่าการโหลดเสร็จสมบูรณ์ บางครั้งตัวเชื่อมต่อเว็บจะดาวน์โหลด HTML หลังจากโหลดเนื้อหาแบบไดนามิกทั้งหมดแล้ว ในบางครั้งการเปลี่ยนแปลงยังคงอยู่ระหว่างดําเนินการเมื่อดาวน์โหลด HTML ซึ่งนําไปสู่ข้อผิดพลาดประปราย
วิธีแก้ปัญหาคือการใช้ WaitFor ตัวเลือกของ Web.BrowserContents ซึ่งระบุตัวเลือกหรือระยะเวลาที่ควรรอก่อนที่จะดาวน์โหลด HTML
คุณจะทราบได้อย่างไรว่าหน้าเว็บเป็นแบบไดนามิก โดยปกติแล้วมันค่อนข้างง่าย เปิดหน้าในเบราว์เซอร์และดูการโหลด หากเนื้อหาปรากฏขึ้นทันที แสดงว่าเป็นหน้า HTML ปกติ หากปรากฏแบบไดนามิกหรือเปลี่ยนแปลงเมื่อเวลาผ่านไป แสดงว่าเป็นหน้าแบบไดนามิก
การใช้เกตเวย์กับตัวเชื่อมต่อเว็บ
ทั้ง Web.BrowserContents และ Web.Page จําเป็นต้องใช้เกตเวย์ข้อมูลภายในองค์กรเมื่อเผยแพร่ไปยังบริการระบบคลาวด์ เช่น แบบจําลองความหมายหรือกระแสข้อมูล Power BI หรือกระแสข้อมูล Power Apps (ปัจจุบัน Dynamics 365 Customer Insights ไม่สนับสนุนการใช้เกตเวย์)
หากคุณกําลังใช้ Web.Page และได้รับ Please specify how to connect ข้อผิดพลาด ตรวจสอบให้แน่ใจว่าคุณได้ติดตั้ง Internet Explorer 10 หรือใหม่กว่าบนเครื่องที่โฮสต์เกตเวย์ข้อมูลภายในองค์กรของคุณ
หากคุณกําลังใช้ Web.BrowserContents และได้รับ We were unable to find the WebView2 runtime ข้อผิดพลาด ตรวจสอบให้แน่ใจว่าคุณได้ติดตั้งรันไทม์ WebView2 บนเครื่องที่โฮสต์เกตเวย์ข้อมูลภายในองค์กรของคุณ ข้อความแสดงข้อผิดพลาดควรให้ลิงก์ไปยังตัวติดตั้งรันไทม์ WebView2 หากคุณติดตั้งรันไทม์ แต่ยังคงเห็นข้อผิดพลาด ตรวจสอบให้แน่ใจว่าบัญชีบริการเกตเวย์ (โดยปกติคือ PBIEgwService) มีสิทธิ์เข้าถึงตําแหน่งการติดตั้งของรันไทม์ WebView2 (ตัวอย่างเช่น C:\Program Files (x86)\Microsoft\EdgeWebView)
ข้อผิดพลาด "เราพบข้อผิดพลาดเมื่อเริ่มต้นเว็บเบราว์เซอร์" เมื่อใช้ Web.BrowserContents
ข้อผิดพลาดนี้อาจเกิดขึ้นได้หากกระบวนการเรียก Web.BrowserContents กําลังทํางานในโหมดยกระดับ เนื่องจากขณะนี้ WebView2 ไม่รองรับการเรียกใช้ด้วยสิทธิ์ของผู้ดูแลระบบ
การใช้ Web.Page แทน Web.BrowserContents
ในกรณีที่คุณจําเป็นต้องใช้ Web.Page แทน Web.BrowserContentsคุณยังสามารถใช้ Web.Pageด้วยตนเองได้
ใน Power BI Desktop คุณสามารถใช้ฟังก์ชันที่เก่ากว่า Web.Page ได้โดยการล้างตัวเลือก เปิดใช้งานการอนุมานตารางเว็บ :
ภายใต้แท็บ ไฟล์ ให้เลือก ตัวเลือกและการตั้งค่า>ตัวเลือก
ในส่วน ส่วนกลาง ให้เลือก ตัวแก้ไข Power Query
ล้างตัวเลือก เปิดใช้งานการอนุมานตารางเว็บ แล้วเลือก ตกลง
รีสตาร์ต Power BI Desktop
Note
ในขณะนี้ คุณไม่สามารถปิดการใช้งาน
Web.BrowserContentsใน Power BI Desktop ที่ปรับให้เหมาะสมสําหรับเซิร์ฟเวอร์รายงาน Power BI ได้
คุณยังสามารถรับสําเนาของ Web.Page แบบสอบถามจาก Excel ได้อีกด้วย เมื่อต้องการคัดลอกโค้ดจาก Excel:
- เลือก จากเว็บ จากแท็บ ข้อมูล
- ใส่ที่อยู่ในกล่องโต้ตอบ จากเว็บ แล้วเลือก ตกลง
- ในตัวนําทาง ให้เลือกข้อมูลที่คุณต้องการโหลด แล้วเลือก แปลงข้อมูล
- ในแท็บ หน้าแรก ของ Power Query ให้เลือก ตัวแก้ไขขั้นสูง
- ในตัว แก้ไขขั้นสูง ให้คัดลอกสูตร M
- ในแอปที่ใช้
Web.BrowserContentsให้เลือกตัวเชื่อมต่อคิวรีเปล่า - ถ้าคุณกําลังคัดลอกไปยัง Power BI Desktop:
- ในแท็บหน้าแรก ให้เลือกตัวแก้ไขขั้นสูง
- วางแบบสอบถามที่
Web.Pageคัดลอกในตัวแก้ไข แล้วเลือก เสร็จสิ้น
- ถ้าคุณกําลังคัดลอกไปยัง Power Query Online:
- ใน แบบสอบถามเปล่า ให้วางแบบสอบถามที่คัดลอก
Web.Pageไว้ในแบบสอบถามเปล่า - เลือกเกตเวย์ข้อมูลภายในองค์กรที่จะใช้
- เลือก ถัดไป
- ใน แบบสอบถามเปล่า ให้วางแบบสอบถามที่คัดลอก
คุณยังสามารถป้อนรหัสต่อไปนี้ลงในคิวรีเปล่าได้ด้วยตนเอง ตรวจสอบให้แน่ใจว่าคุณป้อนที่อยู่ของหน้าเว็บที่คุณต้องการโหลด
let
Source = Web.Page(Web.Contents("<your address here>")),
Navigation = Source{0}[Data]
in
Navigation
การบันทึกคําขอเว็บและการเพิกถอนใบรับรอง
เราเสริมสร้างความปลอดภัยของการเชื่อมต่อเว็บเพื่อปกป้องข้อมูลของคุณ อย่างไรก็ตาม การอัปเดตนี้หมายความว่าบางสถานการณ์ เช่น การบันทึกคําขอเว็บด้วย Fiddler จะไม่ทํางานตามค่าเริ่มต้นอีกต่อไป เมื่อต้องการเปิดใช้งานสถานการณ์เหล่านั้น:
เปิด Power BI Desktop
ภายใต้แท็บ ไฟล์ ให้เลือก ตัวเลือกและการตั้งค่า>ตัวเลือก
ใน ตัวเลือก ภายใต้ความปลอดภัย> ให้ยกเลิกการเลือก เปิดใช้งานการตรวจสอบการเพิกถอนใบรับรอง
เลือก ตกลง
รีสตาร์ต Power BI Desktop
สําคัญ
การยกเลิกการเลือก เปิดใช้งานการตรวจสอบการเพิกถอนใบรับรอง จะทําให้การเชื่อมต่อเว็บมีความปลอดภัยน้อยลง
เมื่อต้องการตั้งค่าสถานการณ์สมมตินี้ในนโยบายกลุ่ม ให้ใช้คีย์ "DisableCertificateRevocationCheck" ภายใต้เส้นทางรีจิสทรี "Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft Power BI Desktop" การตั้งค่า "DisableCertificateRevocationCheck" เป็น 0 จะเปิดใช้งานการตรวจสอบเสมอ (หยุด Fiddler และซอฟต์แวร์ที่คล้ายกันไม่ให้ทํางาน) และการตั้งค่า "DisableCertificateRevocationCheck" เป็น 1 จะปิดใช้งานการตรวจสอบเสมอ (เปิดใช้งาน Fiddler และซอฟต์แวร์ที่คล้ายกัน)
การเปลี่ยนวิธีการรับรองความถูกต้อง
ในบางกรณี คุณอาจต้องเปลี่ยนวิธีการรับรองความถูกต้องที่คุณใช้เพื่อเข้าถึงไซต์ใดไซต์หนึ่ง หากจําเป็นต้องเปลี่ยนแปลงนี้ ให้ไปที่ เปลี่ยนวิธีการรับรองความถูกต้อง
การรับรองความถูกต้องไปยังบริการตามอําเภอใจ
บริการบางอย่างสนับสนุนความสามารถของตัวเชื่อมต่อเว็บในการรับรองความถูกต้องด้วยการรับรองความถูกต้อง OAuth/Microsoft Entra ID ทันที อย่างไรก็ตาม การรับรองความถูกต้องนี้ใช้ไม่ได้ในกรณีส่วนใหญ่
เมื่อพยายามรับรองความถูกต้อง ถ้าเกิดข้อผิดพลาดต่อไปนี้:
We were unable to connect because this credential type isn’t supported for this resource. Please choose another credential type.
ติดต่อเจ้าของบริการ พวกเขาจําเป็นต้องเปลี่ยนการกําหนดค่าการรับรองความถูกต้องหรือสร้างตัวเชื่อมต่อแบบกําหนดเอง
ตัวเชื่อมต่อเว็บใช้ HTTP 1.1 เพื่อสื่อสาร
ตัวเชื่อมต่อเว็บ Power Query สื่อสารกับแหล่งข้อมูลโดยใช้ HTTP 1.1 หากแหล่งข้อมูลของคุณคาดว่าจะสื่อสารโดยใช้ HTTP 1.0 คุณอาจได้รับข้อผิดพลาด เช่น500 Internal Server Error
ไม่สามารถสลับ Power Query เพื่อใช้ HTTP 1.0 ได้ Power Query จะส่ง an Expect:100-continue เสมอเมื่อมีเนื้อหาเพื่อหลีกเลี่ยงการส่งผ่านเพย์โหลดที่อาจมีขนาดใหญ่เมื่อการเรียกครั้งแรกอาจล้มเหลว (ตัวอย่างเช่น เนื่องจากไม่มีสิทธิ์) ขณะนี้ ลักษณะการทํางานนี้ไม่สามารถเปลี่ยนแปลงได้
การเชื่อมต่อกับ Microsoft Graph
ขณะนี้ Power Query ไม่รองรับการเชื่อมต่อกับ Microsoft Graph REST API ข้อมูลเพิ่มเติม: การขาดการสนับสนุนสําหรับ Microsoft Graph ใน Power Query