Add book command to search modding book
parent
28fc9f1f15
commit
c91a769a6a
|
@ -78,4 +78,6 @@ Required arguments are enclosed in { and }, optional arguments are enclosed in [
|
||||||
<tr> <td>!tell {nick} {message}</td> <td>Tell somebody a message</td> <td>Anyone</td> </tr>
|
<tr> <td>!tell {nick} {message}</td> <td>Tell somebody a message</td> <td>Anyone</td> </tr>
|
||||||
<tr> <td><b>modsearch.py</b></td> <td></td> <td></td> </tr>
|
<tr> <td><b>modsearch.py</b></td> <td></td> <td></td> </tr>
|
||||||
<tr> <td>!mod {modname}</td> <td>Searches for a mod</td> <td>Anyone</td> </tr>
|
<tr> <td>!mod {modname}</td> <td>Searches for a mod</td> <td>Anyone</td> </tr>
|
||||||
|
<tr> <td><b>booksearch.py</b></td> <td></td> <td></td> </tr>
|
||||||
|
<tr> <td>!book {term}</td> <td>Searches for a chapter/page in the modding book</td> <td>Anyone</td> </tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
|
@ -0,0 +1,30 @@
|
||||||
|
#!/usr/bin/env python
|
||||||
|
"""
|
||||||
|
booksearch.py - Phenny Minetest Modding Book Search Module
|
||||||
|
Copyright 2018, rubenwardy
|
||||||
|
Licensed under GNU General Public License v2.0
|
||||||
|
"""
|
||||||
|
|
||||||
|
import web
|
||||||
|
|
||||||
|
def book(phenny, input):
|
||||||
|
uri = "https://rubenwardy.com/minetest_modding_book/sitemap.json"
|
||||||
|
text, status = web.get(uri)
|
||||||
|
text = str(text, 'utf-8')
|
||||||
|
data = web.json(text)
|
||||||
|
|
||||||
|
query = (input.group(2) or "").lower()
|
||||||
|
if not query: return
|
||||||
|
for ele in data:
|
||||||
|
title = ele["title"]
|
||||||
|
desc = ele.get("description", "")
|
||||||
|
if query in title.lower() or query in desc.lower():
|
||||||
|
return phenny.reply(title + " - " + ele["loc"])
|
||||||
|
|
||||||
|
phenny.reply("Nothing found.")
|
||||||
|
|
||||||
|
book.commands = ['book']
|
||||||
|
book.example = '.book folder structure'
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
print(__doc__)
|
Loading…
Reference in New Issue