ソースを参照

Implement read_signatures().

tags/v0.1^2
Ben Kurtovic 12年前
コミット
205ae4b7a6
1個のファイルの変更8行の追加2行の削除
  1. +8
    -2
      earwigbot/tasks/drn_clerkbot.py

+ 8
- 2
earwigbot/tasks/drn_clerkbot.py ファイルの表示

@@ -328,8 +328,14 @@ class DRNClerkBot(Task):
return self.build_talk_notice(self.STATUS_REVIEW)

def read_signatures(self, text):
raise NotImplementedError() # TODO
return [(username, timestamp_datetime)...]
regex = r"\[\[(?:User(?:\stalk)?\:|Special\:Contributions\/)(.*?)(?:\||\]\]).{,256}?(\d{2}:\d{2},\s\d{2}\s\w+\s\d{4}\s\(UTC\))"
matches = re.findall(regex, text, re.U)
signatures = []
for userlink, stamp in matches:
username = userlink.split("/", 1)[0].replace("_", " ")
timestamp = datetime.strptime("%H:%M, %d %B %Y (UTC)", stamp)
signatures.append((username, timestamp))
return signatures

def get_signatures_from_db(self, conn, case):
query = "SELECT signature_username, signature_timestamp FROM signature WHERE signature_case = ?"


読み込み中…
キャンセル
保存