我正在一个项目中,以识别stackoverflow问题正文中的某些文本。它有效,但在这种情况下,它不起作用。我正在查看是否可以通过代码找到适用于AWS的公开访问密钥,以了解情况的严重性。这是代码:
headers = {'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
'Accept-Encoding': 'gzip, deflate',
'Accept-Language': 'en-US,en;q=0.5',
}
url = 'https://api.stackexchange.com/2.2/search/advanced?order=desc&sort=activity&body=' + 'AKIAIHXBFL3ATI64QPAQ' + '&site=stackoverflow'
req = urllib.request.Request(url, headers=headers)
response = urllib.request.urlopen(req)
time.sleep(3)
if response.info().get('Content-Encoding') == 'gzip':
pagedata = gzip.decompress(response.read())
elif response.info().get('Content-Encoding') == 'deflate':
pagedata = response.read()
elif response.info().get('Content-Encoding'):
print('Encoding type unknown')
else:
pagedata = response.read()
soup = BeautifulSoup(pagedata, "lxml")
print(soup)
这是汤的反应:
<html><body><p>{"items":[],"has_more":false,"quota_max":300,"quota_remaining":291}</p></body></html>
返回并清空文件。如果我在body = **参数中搜索其他文本,它的确会显示大量内容。我是在做错什么还是API无法对此文本进行文本搜索?谢谢您的帮助
答案 0 :(得分:1)
这看起来像是另一个API错误。
一种解决方法是改用test
参数:
/2.2/search/advanced?q=AKIAIHXBFL3ATI64QPAQ&site=stackoverflow
与this live site search的结果相同。 (目前有2个问题)
请注意,无论如何,都不会在目标文本中找到答案 。 API对此不利。
SEDE可以在问题和答案中都找到文本,但结果可能长达一周。