I’m trying to parse out if a given application has PC, Mac or Linux support.
defp platforms(game) do
game
|> Floki.find("img")
|> Enum.reduce([], fn img, platforms ->
image_url = Floki.attribute(img, "src") |> Enum.at(0)
platforms =
if image_url =~ "inline_pc" do
["PC" | platforms] |> IO.inspect()
end
platforms =
if image_url =~ "inline_mac" do
["Mac" | platforms] |> IO.inspect()
end
platforms =
if image_url =~ "inline_linux" do
["Linux" | platforms] |> IO.inspect()
end
platforms
end)
|> Enum.uniq()
|> IO.inspect()
end
I notice that in my if conditional, if it doesn’t pass it will nil out my platforms
variable.
Something like this works fine, but it’s ugly as hell:
if image_url =~ "inline_pc" do
["PC" | platforms]
else
platforms
end
Wondering if there’s a better approach to accomplish my goal. Thank you!