我有一个 URL 列表,例如 ...net/family_tree/100.html ...net/family_tree/105.html ...net/family_tree/110.html ETC。 Power Query 可以从第一个 URL ...net/family_tree/100.html 获取数据,但为其他 URL 返回“null”。如何让 Power Query 返回表中所有 URL 的数据?
我对一个 URL 进行了 Power Query,它返回了数据。然后,我编辑查询以使用 URL 表中的 URL。它从第一个 URL 返回数据,但其他 URL 返回“null”。
这是适用于查询单个 URL 的代码,即 “
file:///C:/Viking%20Family%20Htmls/591.html
”:-
let
Source = File.Contents("file:///C:/Viking%20Family%20Htmls/591.html"),
#"Extracted Table From Html" = Html.Table(Source, {{"Column1", "BODY > TABLE:nth-child(1) > * > TR > :nth-child(1)"}}, [RowSelector="BODY > TABLE:nth-child(1) > * > TR"]),
#"Changed Type" = Table.TransformColumnTypes(#"Extracted Table From Html",{{"Column1", type text}}),
#"Filtered Rows" = Table.SelectRows(#"Changed Type", each ([Column1] = "f a m i l y#(lf)#(lf)Children with:Gauthild Algautsdotter#(lf)Children:Olav Tretelgja#(lf)#(lf)Ingjald Anundsson#(lf)#(lf)Born: 690"))
in
#"Filtered Rows"
此代码适用于表的第一个 URL,但在表中的其他 URL 上返回 “null” :-
let Getdata=(URL) =>
let
Source = File.Contents(URL),
#"Extracted Table From Html" = Html.Table(Source, {{"Column1", "BODY > TABLE:nth-child(1) > * > TR > :nth-child(1)"}}, [RowSelector="BODY > TABLE:nth-child(1) > * > TR"]),
#"Changed Type" = Table.TransformColumnTypes(#"Extracted Table From Html",{{"Column1", type text}}),
#"Filtered Rows" = Table.SelectRows(#"Changed Type", each ([Column1] = "f a m i l y#(lf)#(lf)Children with:Gauthild Algautsdotter#(lf)Children:Olav Tretelgja#(lf)#(lf)Ingjald Anundsson#(lf)#(lf)Born: 690"))
in
#"Filtered Rows"
in Getdata
当我对上述查询的结果执行“添加自定义列”时,它会生成一个包含以下数据的表
file:///C:/Viking%20Family%20Htmls/591.html
但有“null”
file:///C:/Viking%20Family%20Htmls/592.html
file:///C:/Viking%20Family%20Htmls/587.html
etc.
当我运行上面的代码时,它会生成一个名为“Vikings”的查询。下面是我点击“高级编辑器”时看到的代码:-
let
Source = Excel.CurrentWorkbook(){[Name="Vikings"]}[Content],
#"Changed Type" = Table.TransformColumnTypes(Source,{{"Vikings List", type text}}),
#"Added Custom" = Table.AddColumn(#"Changed Type", "Custom", each fxVikings([Vikings List])),
#"Expanded Custom" = Table.ExpandTableColumn(#"Added Custom", "Custom", {"Column1"}, {"Column1"})
in
#"Expanded Custom"
如果您想要来自单个查询和表格查询的图像,请告诉我。如果你这样做,我可以将图像复制到这个问题中吗? 感谢您迄今为止的关注,希望您能有所帮助。
您可以尝试删除
Filtered Rows
中的 GetData
看看是否有帮助:
let Getdata=(URL) =>
let
Source = File.Contents(URL),
#"Extracted Table From Html" = Html.Table(Source, {{"Column1", "BODY > TABLE:nth-child(1) > * > TR > :nth-child(1)"}}, [RowSelector="BODY > TABLE:nth-child(1) > * > TR"]),
#"Changed Type" = Table.TransformColumnTypes(#"Extracted Table From Html",{{"Column1", type text}})
in
#"Changed Type"
in Getdata