b1100db649
urlinfo: make .* in front of the URL non-greedy
...
This is done because URLs may contain one or more other URLs that match
the url pattern (e.g. https://web.archive.org links). Because .* is
greedy by default, this caused only the last matching URL to be
captured, instead of the full URL.
2023-08-05 13:42:46 +00:00
1149417b56
quotes: replace non-functional print() with self.log.error()
2023-07-25 22:28:08 +00:00
f50fe88a14
linux: handle JSONDecodeError
2023-07-21 11:47:54 +00:00
fa51899a24
urlinfo: catch superclass RequestException instead of each exception individually
2023-07-21 11:44:20 +00:00
d59e170e8b
linux: use json kernel.org release feeed
...
Reading the releases from the json feed is much simpler and it allows us
to drop the dependency on feedparser.
2022-11-08 00:25:05 +00:00
ffa64f509c
linux: fix two SyntaxWarnings
2022-11-07 20:20:11 +00:00
9ba11a50cd
youtube: fix a SyntaxWarning
2022-09-17 10:44:00 +00:00
9c8203d433
youtube: use "Return YouTube Dislike" api for the dislike count
2021-12-14 20:45:08 +00:00
9ba23e9a29
linux: remove double spaces in stallman quote
2021-12-06 20:07:29 +00:00
5fe240db8b
mcmaniac: print confirmation when new entry is added
2021-12-06 02:51:00 +00:00
c1439ca4c5
useless: remove .abuse trigger
2021-08-17 14:12:38 +00:00
dab86916ab
urlinfo: catch TooManyRedirects exceptions
2021-08-13 17:26:52 +00:00
ceb3002281
urlinfo: fix some NoneType attribute errors
2021-07-20 21:40:38 +00:00
fe79f444cf
isup: show state as 'down' if response is an HTTPError
2021-07-20 21:39:39 +00:00
b6b8d91592
weather: switch to OpenWeatherMap
...
public yahoo api was shut down on Jan 3, 2019
2021-05-20 14:00:35 +00:00
9c3cd2f816
urlinfo: check content-type before downloading + handle timeouts
...
improve codestyle and formatting
2021-05-20 00:27:03 +00:00
e7b89e7fdb
urlinfo: update blacklist
2021-05-20 00:25:43 +00:00
b8c3fe073b
urban: fix multi-word terms
2021-05-15 14:26:56 +00:00
c8870bab4e
update requirements + add lxml
2021-05-15 01:59:50 +00:00
c4f66e5346
urlinfo: limit download size + check content type
2021-05-14 22:13:30 +00:00
233cfc9089
add urlinfo plugin
2021-05-14 19:20:19 +00:00
noxy
be2d9ab27f
Update bot/useless.py
2021-05-12 18:41:54 +00:00
noxy
c1be5ee2af
hebamme command
2021-05-12 18:34:06 +00:00
452796556f
tell: fix sending unique constraint violating message multiple times
2021-03-09 15:17:20 +00:00
31631e3e4d
rape: fix fines color
2021-01-25 19:43:53 +00:00
7036bceeb0
mcmaniac: fix regex #2
...
schema: make mcmaniac items case-insensitive
2021-01-06 19:44:19 +00:00
51bf31e2a5
mcmaniac: fix regex
2020-12-19 15:20:30 +00:00
noxy
ade97db922
useless: add vampir trigger
2020-11-20 16:50:26 +00:00
afbcf2e951
urban: use variable from previous commit in result formatting
2020-11-20 16:18:14 +00:00
fa18d1b3eb
fix urban dictionary (ud) trigger
2020-11-20 16:14:43 +00:00
92d98a1e6c
utils: fix iso8601 parsing
...
youtube: change datetime format in output
2020-05-18 20:48:20 +00:00
98646f3226
minor bugfixes
2020-05-01 23:20:37 +00:00
2d41d0c0bb
useless: add corona trigger
2020-05-01 23:19:31 +00:00
80cfa2f815
useless: fix syntax warning
...
storage: shorten code
2020-03-16 22:04:29 +00:00
e03f5d0a43
add auto reconnect for postgres
...
This only works on the second database interaction, since psycopg2 only notices that
the connection is gone, when a query is executed.
So in the common case reconnect works as follows:
- some bot method calls a cursor function like .execute(), .fetchone(), etc.
- this raises an error if the connection is broken
- if following code then requests a new cursor, this will also fail since psycopg2
now knows that the connection is gone
- the error is caught in storage.DBConn.cursor(), a new connection will be set up
of which a new cursor is yielded
If the error happens in connection.commit() or .rollback() instead we can instantly
reconnect since these methods are wrapped.
So why not wrap the cursor methods as well?
Consider the following example:
A query is the last thing that was executed on a cursor.
The database connection is lost.
Now .fetchone() is called on the cursor.
We could wrap .fetchone() and reconnect, but we'd have to use a new cursor since
cursors are linked to connections. And on this new cursor .fetchone() wouldn't
make any sense, since we haven't executed a query on this cursor.
2020-03-16 21:51:32 +00:00
84396cad99
quotes: add global searching
2019-12-08 22:04:04 +00:00
db797b4fef
quotes: add quote searching
2019-12-08 19:35:10 +00:00
81c22bf6a4
utils: remove unused import of pprint
2019-12-08 19:33:56 +00:00
4a11ea497e
add flash to REE regex
2019-09-19 19:24:06 +00:00
Flummi
9388a39291
lowfry deep fried
2019-07-16 13:47:19 +00:00
Flummi
c8cb1f0fa6
pls don't throw any errors.
2019-04-24 17:48:19 +00:00
7255dd4735
fix debian/ubuntu/apt/dpkg regex
...
now doesn't match words like laptop, with 'apt' inside, anymore
2018-12-17 15:03:22 +00:00
1dac1571e2
remove +R, add +B on connect
...
add .iframe command
2018-12-10 16:04:59 +00:00
c36569d33d
fix ree regex
2018-08-14 12:52:58 +02:00
6b1c3a4e8f
add a lot of useless and ascii commands
2018-08-14 01:07:57 +02:00
1e13cb5a37
Set 'currency' to 'usd' if fallback has been used
2017-10-15 04:03:30 +02:00
4da84cb452
Add 'usd' fallback to coin data request
2017-10-15 04:00:31 +02:00
a08d5f07dc
Add currency information to 'no data received' message
2017-10-15 03:56:19 +02:00
f02e90ecd8
Fix data request for coins
2017-10-15 03:51:12 +02:00
0c7697e33b
Move __currency out of Coins class
2017-10-15 03:49:08 +02:00