RubyGem';蒸汽冷凝器';-为什么我只能获取一些配置文件?

RubyGem';蒸汽冷凝器';-为什么我只能获取一些配置文件?,ruby,rubygems,steam,steam-condenser,Ruby,Rubygems,Steam,Steam Condenser,我有一个与游戏相关的IRC机器人(具体来说是团队堡垒2)。我想为它实现一些与Steam API通信的特性。我在用电脑。我一直在IRB里闲逛,试图了解它是如何工作的。有一件事我不明白,那就是为什么我可以从Steam社区获取一些个人资料。虽然一些概要文件导致“XML无法解析”错误,但我不知道为什么 为那些不了解/不熟悉Steam社区的人提供一点信息 配置文件可以设置为“专用”。这意味着只有朋友才能看到个人资料,但是我可以检索一些公共个人资料,而有些公共个人资料我无法检索 蒸汽剖面主要由3个不同的I

我有一个与游戏相关的IRC机器人(具体来说是团队堡垒2)。我想为它实现一些与Steam API通信的特性。我在用电脑。我一直在IRB里闲逛,试图了解它是如何工作的。有一件事我不明白,那就是为什么我可以从Steam社区获取一些个人资料。虽然一些概要文件导致“XML无法解析”错误,但我不知道为什么

为那些不了解/不熟悉Steam社区的人提供一点信息

  • 配置文件可以设置为“专用”。这意味着只有朋友才能看到个人资料,但是我可以检索一些公共个人资料,而有些公共个人资料我无法检索
  • 蒸汽剖面主要由3个不同的ID标识
    • 蒸汽ID:看起来像蒸汽0:0:16866618
    • SteamID64:看起来有点像76561197993998964
    • CustomURL:我可以选择设置一个“CustomURL”。例如,我已将我的设置为booyakah,因为这是我的游戏昵称。这将为我的Steam社区档案提供此URLhttp://steamcommunity.com/id/booyakah/而不是http://steamcommunity.com/profiles/76561197993998964
如上所述,一些概要文件可以很好地使用任一解决方案(搜索SteamID、SteamID64或CustomURL)检索它们的概要文件。有些配置文件返回“XML无法解析”错误,不管我如何检索它

这就是我试图做的,当出现问题时,IRB的输出

1.9.3p194 :002 > player = SteamId.new("booyakah")
SteamCondenserError: XML data could not be parsed.
from /Users/ma/.rvm/gems/ruby-1.9.3-p194/gems/steam-condenser-1.2.1/lib/steam/community/steam_id.rb:296:in `fetch'
from /Users/ma/.rvm/gems/ruby-1.9.3-p194/gems/steam-condenser-1.2.1/lib/steam/community/cacheable.rb:42:in `block in method_added'
from /Users/ma/.rvm/gems/ruby-1.9.3-p194/gems/steam-condenser-1.2.1/lib/steam/community/cacheable.rb:104:in `new'
from (irb):2
from /Users/ma/.rvm/rubies/ruby-1.9.3-p194/bin/irb:16:in `<main>'

1.9.3p194 :003 > player = SteamId.from_steam_id("STEAM_0:0:16866618")
SteamCondenserError: XML data could not be parsed.
from /Users/ma/.rvm/gems/ruby-1.9.3-p194/gems/steam-condenser-1.2.1/lib/steam/community/steam_id.rb:296:in `fetch'
from /Users/ma/.rvm/gems/ruby-1.9.3-p194/gems/steam-condenser-1.2.1/lib/steam/community/cacheable.rb:42:in `block in method_added'
from /Users/ma/.rvm/gems/ruby-1.9.3-p194/gems/steam-condenser-1.2.1/lib/steam/community/cacheable.rb:104:in `new'
from /Users/ma/.rvm/gems/ruby-1.9.3-p194/gems/steam-condenser-1.2.1/lib/steam/community/steam_id.rb:196:in `from_steam_id'
from (irb):3
from /Users/ma/.rvm/rubies/ruby-1.9.3-p194/bin/irb:16:in `<main>'
1.9.3p194:002>玩家=SteamId.new(“booyakah”)
蒸汽冷凝器错误:无法分析XML数据。
from/Users/ma/.rvm/gems/ruby-1.9.3-p194/gems/steam-concerter-1.2.1/lib/steam/community/steam_id.rb:296:in'fetch'
from/Users/ma/.rvm/gems/ruby-1.9.3-p194/gems/steam-concerter-1.2.1/lib/steam/community/cacheable.rb:42:“添加方法中的块”
from/Users/ma/.rvm/gems/ruby-1.9.3-p194/gems/steam-concerter-1.2.1/lib/steam/community/cacheable.rb:104:in“new”
来自(irb):2
from/Users/ma/.rvm/rubies/ruby-1.9.3-p194/bin/irb:16:in`'
1.9.3p194:003>玩家=蒸汽id。来自蒸汽id(“蒸汽0:0:16866618”)
蒸汽冷凝器错误:无法分析XML数据。
from/Users/ma/.rvm/gems/ruby-1.9.3-p194/gems/steam-concerter-1.2.1/lib/steam/community/steam_id.rb:296:in'fetch'
from/Users/ma/.rvm/gems/ruby-1.9.3-p194/gems/steam-concerter-1.2.1/lib/steam/community/cacheable.rb:42:“添加方法中的块”
from/Users/ma/.rvm/gems/ruby-1.9.3-p194/gems/steam-concerter-1.2.1/lib/steam/community/cacheable.rb:104:in“new”
from/Users/ma/.rvm/gems/ruby-1.9.3-p194/gems/steam-concerter-1.2.1/lib/steam/community/steam\u id.rb:196:in“from\u steam\u id”
来自(irb):3
from/Users/ma/.rvm/rubies/ruby-1.9.3-p194/bin/irb:16:in`'
和相同的示例,但是当它成功检索到概要文件时

1.9.3p194 :005 > player = SteamId.new("s3")
=> #<SteamId:0x007fa3f35c2b48 @custom_url="s3", @xml_data={"steamID64"=>"76561197974944013", "steamID"=>"s3cr3t ***********!", "onlineState"=>"offline", "stateMessage"=>nil, "privacyState"=>"friendsonly", "visibilityState"=>"1", "avatarIcon"=>"http://media.steampowered.com/steamcommunity/public/images/avatars/a9/a9407f9a99d1e74bb0cabb3c23273c9b4bded906.jpg", "avatarMedium"=>"http://media.steampowered.com/steamcommunity/public/images/avatars/a9/a9407f9a99d1e74bb0cabb3c23273c9b4bded906_medium.jpg", "avatarFull"=>"http://media.steampowered.com/steamcommunity/public/images/avatars/a9/a9407f9a99d1e74bb0cabb3c23273c9b4bded906_full.jpg", "vacBanned"=>"0", "tradeBanState"=>"None", "isLimitedAccount"=>"0"}, @nickname="s3cr3t ***********!", @steam_id64=76561197974944013, @limited=false, @trade_ban_state="None", @vac_banned=false, @image_url="http://media.steampowered.com/steamcommunity/public/images/avatars/a9/a9407f9a99d1e74bb0cabb3c23273c9b4bded906", @online_state="offline", @privacy_state="friendsonly", @state_message=nil, @visibility_state=1, @fetch_time=2012-12-17 15:13:17 +0100> 
1.9.3p194:005>player=SteamId.new(“s3”)
=>#“76561197974944013”、“steamID”=>“s3cr3t**********!”、“onlineState”=>“offline”、“stateMessage”=>无、“privacyState”=>“friendsonly”、“visibilityState”=>“1”、“avatarIcon”=>”http://media.steampowered.com/steamcommunity/public/images/avatars/a9/a9407f9a99d1e74bb0cabb3c23273c9b4bded906.jpg“,”虚拟媒体“=>"http://media.steampowered.com/steamcommunity/public/images/avatars/a9/a9407f9a99d1e74bb0cabb3c23273c9b4bded906_medium.jpg,“avatarFull”=>“http://media.steampowered.com/steamcommunity/public/images/avatars/a9/a9407f9a99d1e74bb0cabb3c23273c9b4bded906_full.jpg“,”Vacbanked“=>”0“,”tradeBanState“=>”无“,”isLimitedAccount“=>”0“},@昵称=”s3cr3t************!“,@steam_id64=76561197974944013,@limited=false,@trade_ban_state=“None”,@vac_banked=false,@image_url=”http://media.steampowered.com/steamcommunity/public/images/avatars/a9/a9407f9a99d1e74bb0cabb3c23273c9b4bded906“,@online\u state=“offline”,@privacy\u state=“friendsonly”“,@state\u message=nil,@visibility\u state=1,@fetch\u time=2012-12-17 15:13:17+0100>
我不明白为什么有些配置文件可以检索,而有些不能。据我所见,个人资料是否公开并不重要。由于明显的原因,根本无法检索私有配置文件。但是,只能检索一些公共配置文件


我在这里不知所措,非常感谢任何帮助或想法

这是一个已知的问题,已经在蒸汽冷凝器Ruby gem的
master
分支中得到解决

我还没有时间发布新版本的gem。因此,请随意使用
master
中的代码