Twitter api - 搜索太复杂了?

时间:2011-02-12 05:37:16

标签: search twitter

知道为什么Twitter会抛出这个错误吗?

GET https://search.twitter.com/search.json?q=Middle%20Tennessee%20State%20Blue%20Raiders%20Florida%20International%20Golden%20Panthers%20win%20OR%20lose%20-rt%20-from%3Aespn&&lang=en&since=2011-02-09: 403: Sorry, your query is too complex. Please reduce complexity and try again.

3 个答案:

答案 0 :(得分:5)

截至2011年8月,至少看起来最大查询字符串长度相当高。它对我来说很好,最大长度为300;当我移动到500个字符时,我最终得到了三个查询,第二个查询失败了:

  • q1:OK:491个字符,23个OR子句
  • q2:FAILED:493个字符,39个OR子句
  • q3:OK:203个字符,17个OR子句

所以,它可能会变成492个字符,或者可能是24个以上的字符。我怀疑有些组合。

我没有花更多的时间进一步缩小范围,好像指南已经修复,然后Twitter会发布它们。我将把我的查询分成300个字符或20个子句,以先到者为准,并希望这是合理的面向未来的。

更新:在https://dev.twitter.com/docs/using-search的“最佳做法”下,他们建议将查询限制为10个子句。显然,根据我的上述结果,这不是目前的硬性限制,但10应该是我追求的未来限制。

P.S。回到实际问题,我注意到你有一个“&&&”你的查询中的拼写错误。它想知道这是否可能引发投诉? (未经考验的想法)

答案 1 :(得分:2)

2018年2月8日:

  1. Twitter搜索限制为 50 OR 条款(通知50 OR条款包含49 OR,因为例如word1 OR word2包含两个条款和一个OR)。
  2. Twitter搜索限制为 500 字符。
  3. 我对OR子句的测试是:

    • 此搜索有效:h1 OR h2 OR h3 OR h4 OR h5 OR h6 OR h7 OR h8 OR h9 OR h10 OR h11 OR h12 OR h13 OR h14 OR h15 OR h16 OR h17 OR h18 OR h19 OR h20 OR h21 OR h22 OR h23 OR h24 OR h25 OR h26 OR h27 OR h28 OR h29 OR h30 OR h31 OR h32 OR h33 OR h34 OR h35 OR h36 OR h37 OR h38 OR h39 OR h40 OR h41 OR h42 OR h43 OR h44 OR h45 OR h46 OR h47 OR h48 OR h49 OR h50

    • 但是,如果我们添加:OR h51,则会失败

    我对字符数的测试是:

    • 此搜索有效(500个字符):hell1 OR hell2 OR hell3 OR hell4 OR hell5 OR hell6 OR hell7 OR hell8 OR hell9 OR hell10 OR hell11 OR hell12 OR hell13 OR hell14 OR hell15 OR hell16 OR hell17 OR hell18 OR hell19 OR hell20 OR hell21 OR hell22 OR hell23 OR hell24 OR hell25 OR hell26 OR hell27 OR hell28 OR hell29 OR hell30 OR hell31 OR hell32 OR hell33 OR hell34 OR hell35 OR hell36 OR hell37 OR hell38 OR hell39 OR hell40 OR hell41 OR hell42 OR hell43 OR hell44 OR hell45 OR hell46 OR hell47 OR hell48 OR hell49 OR hell50abcdefghijklm

    • 但是,如果我们将n(501个字符)添加到最后一个单词(hell50abcdefghijklmn),则会失败。

    注意我刚刚意识到,如果我们将字符o移到单词hello,结果就是hell(世界是否向我发送了一条消息?xD)

答案 2 :(得分:1)

阅读documentation。 “查询限制了140个URL编码字符。”您查询字符串是156个字符。