我正在使用如下命令和查詢在歷史完整檔案中查找推文:
data = []
for tweet in tweepy.Cursor(api.search_full_archive, label = 'Understanding', query = '((PAN AND Nuevo León) OR (Partido Accion Nacional AND Nuevo León) OR (PAN AND Monterrey) OR (Partido Acción Nacional AND Monterrey))', maxResults = 100, fromDate = '202105060000', toDate = '202107060000').items(10):
data.append(tweet._json)
然后我收到錯誤: HTTPException: 422 Unprocessable Entity 處理您的請求時出錯:參考無效運算子“AND”。對于邏輯 AND,在子句之間使用單個空格“ ”(位置 7),參考無效運算子“AND”。對于邏輯 AND,在子句之間使用單個空格“ ”(在位置 51),參考無效運算子“AND”。對于邏輯 AND,在子句之間使用單個空格“ ”(位置 75),規則長度超過最大允許值。最大值為 128,此規則為 132。規則文本為“((PAN AND Nuevo León) OR (Partido Accion Nacional AND Nuevo León) OR (PAN AND Monterrey) OR (Partido Acción Nacional AND Monterrey))”,參考無效運算子“與”。對于邏輯 AND,在子句之間使用單個空格“ ”(位置 118)
問題歸結為,例如,如果我有四個(字串)子句 'hi', 'goodbye', 'hello' 和 'bye' 并且希望查詢是 ('hi' OR 'hello') AND (' goodbye' OR 'bye') 語法必須如何?
uj5u.com熱心網友回復:
您的答案在錯誤訊息中。你不需要ANDs。正如它所說:
對于邏輯 AND,請使用單個空格 ' '
在Twitter的檔案也支持這一行動:
接線員:查找推文...
“正在觀看”:包含“正在觀看”和“現在”。這是默認運算子。
所以你不需要指定AND,它是由單個空格隱含的。您的查詢也太長,洗掉所有ANDs 會將查詢縮短為 116 個字符:
((PAN Nuevo León) OR (Partido Accion Nacional Nuevo León) OR (PAN Monterrey) OR (Partido Acción Nacional Monterrey))
對于您最后給出的另一個示例,查詢將簡單地為:
('hi' OR 'hello') ('goodbye' OR 'bye')
由于單空格' ',當沒有用雙引號封裝時""是隱含的AND。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/332827.html
