来自 excel 电源查询中用户名的 facebook 用户 ID

facebook userid from username in excel power query

过去两天我一直在excel power query 上花时间,但没有弄清楚如果我有用户名如何获取facebook 用户名。

例如,如果我有用户名 zuck 或 简介 url https://www.facebook.com/zuck

使用以上任何方法,是否可以找到 uid(facebook 数字 ID)。在本例中,ID 为 4

有点类似于http://findmyfbid.com,我想看看是否可以使用excel power query。

谢谢

查看 Power Query Facebook 连接器和 Facebook Graph API 参考,我找不到任何明显的方法来从用户名查找用户 ID。

http://findmyfbid.com/failure indicates that a search engine had to index the public usernames in order to find the id. You can open a page like https://www.facebook.com/Code.org/ 在你的浏览器中浏览 HTML 并自己找到用户名,假设页面仍然是 public.

另一方面,findmyfbid.com已经解决了这个问题。以下是如何使用自定义 Power Query 函数直接查询他们的网站 FindId:

let
    // Assume you've already URL-encoded the id
    FindId = (id as text) as text =>
        let 
          Source = Web.Contents("http://findmyfbid.com/", [
              Content = Text.ToBinary("url=" & id),
              Headers = [#"Content-Type"= "application/x-www-form-urlencoded"]
          ]),

          // Web.Page can't POST directly, so force Web.Contents to execute the POST
          WebPage = Web.Page(Binary.Buffer(Source)),

          // Hopefully findmyfbid.com doesn't change their HTML layout
          DrillDown = WebPage[Data]{0} 
            {[Name="HTML"]}[Children]
            {[Name="BODY"]}[Children]
            {[Name="DIV"]}[Children]
            {[Name="DIV"]}[Children]
            {[Name="CODE"]}[Children]
            {[Kind="Text"]}[Text]
        in
            DrillDown,
    ExampleCodeOrg = FindId("code.org")
in
    ExampleCodeOrg

然后您发现 Code.org 的 ID 为 309754825787494。