<commit_before># coding: utf-8
import re
import db_info
import db_cancel
import db_news
from tweeter import format_info, format_cancel, format_news
import logging
import logging.config

logging.config.fileConfig('./log/log.conf')
log = logging.getLogger('getlog')


def add_info(html, q):
    try:
        # 更新した数をカウント
        updated = 0
        for tr in html.findAll('tr', attrs={'class': re.compile('^gen_')}):
            td = tr.findAll('td')
            # リンクの有無判定
            links = []
            if td[8].a is not None:
                for a in td[8].findAll('a'):
                    link = a.get('href')
                    links.append(link)
            # タグ除去
            lec_info = map(text, td[3:11])
            # リンクを追加
            lec_info[5] = lec_info[5] + " " + " ".join(links)
            # データベースに投げる
            info_id = db_info.add_info(*lec_info)
            if info_id is not False:
                lec_info.append(info_id)
                # Tweetする用に文章をフォーマット
                t = format_info(*lec_info)
                # キューに投入
                q.put(t)
                updated += 1
            else:
                pass
        else:
            if updated is not 0:
                print (u"[GetInfoThread] %s個の情報を追加しました。") % (updated)
            else:
                print (u"[GetInfoThread] 追加情報はありませんでした。")
    except Exception as e:
        log.exception(e)


def add_cancel(html, q):
    try:
        # 更新した数をカウント
        updated = 0
        for tr in html.findAll('tr', attrs={'class': re.compile('^gen_')}):
            td = tr.findAll('td')
            # タグ除去
            lec_cancel = map(text, td[2:9])
            # データベースに投げる
            cancel_id = db_cancel.add_cancel(*lec_cancel)
            if cancel_id is not False:
                # Tweetする用に文章をフォーマット
                t = format_cancel(*lec_cancel)
                # キューに投入
                q.put(t)
                updated += 1
            else:
                pass
        else:
            if updated is not 0:
                print (u"[GetCancelThread] %s個の情報を追加しました。") % (updated)
            else:
                print (u"[GetCancelThread] 追加情報はありませんでした。")
    except Exception as e:
        log.exception(e)


def add_news(html, q):
    try:
        # 更新した数をカウント
        updated = 0
        now_notice = html.find('div', attrs={'id': 'now_notice_area'})
        for tr in now_notice.findAll('tr'):
            td = tr.findAll('td')
            news = map(text, td[0:2])
            # 文中にlinkが存在するか確認
            links = []
            if td[1].a is not None:
                for a in td[1].findAll('a'):
                    link = a.get('href')
                    links.append(link)
            urls = " ".join(links)
            # URLを付加
            news.append(urls)
            # DBに投げる
            news_id = db_news.add_news(*news)
            if news_id is not False:
                news.append(news_id)
                # Tweetする用に文章をフォーマット
                t = format_news(*news)
                # キューに投入
                q.put(t)
                updated += 1
            else:
                pass
        else:
            if updated is not 0:
                print (u"[GetNewsThread] %s個の情報を追加しました。") % (updated)
            else:
                print (u"[GetNewsThread] 追加情報はありませんでした。")
    except Exception as e:
        log.exception(e)


def text(td):
    return td.text.strip()<commit_msg>UnicodeErrorの修正<commit_after># coding: utf-8
import re
import db_info
import db_cancel
import db_news
from tweeter import format_info, format_cancel, format_news
import logging
import logging.config

logging.config.fileConfig('./log/log.conf')
log = logging.getLogger('getlog')


def add_info(html, q):
    try:
        # 更新した数をカウント
        updated = 0
        for tr in html.findAll('tr', attrs={'class': re.compile('^gen_')}):
            td = tr.findAll('td')
            # リンクの有無判定
            links = []
            if td[8].a is not None:
                for a in td[8].findAll('a'):
                    link = a.get('href')
                    links.append(link)
            # タグ除去
            lec_info = map(text, td[3:11])
            # リンクを追加
            lec_info[5] = lec_info[5] + " " + " ".join(links)
            # データベースに投げる
            info_id = db_info.add_info(*lec_info)
            if info_id is not False:
                lec_info.append(info_id)
                # Tweetする用に文章をフォーマット
                t = format_info(*lec_info)
                # キューに投入
                q.put(t)
                updated += 1
            else:
                pass
        else:
            if updated is not 0:
                print ("[GetInfoThread] %s個の情報を追加しました。") % (updated)
            else:
                print ("[GetInfoThread] 追加情報はありませんでした。")
    except Exception as e:
        log.exception(e)


def add_cancel(html, q):
    try:
        # 更新した数をカウント
        updated = 0
        for tr in html.findAll('tr', attrs={'class': re.compile('^gen_')}):
            td = tr.findAll('td')
            # タグ除去
            lec_cancel = map(text, td[2:9])
            # データベースに投げる
            cancel_id = db_cancel.add_cancel(*lec_cancel)
            if cancel_id is not False:
                # Tweetする用に文章をフォーマット
                t = format_cancel(*lec_cancel)
                # キューに投入
                q.put(t)
                updated += 1
            else:
                pass
        else:
            if updated is not 0:
                print ("[GetCancelThread] %s個の情報を追加しました。") % (updated)
            else:
                print ("[GetCancelThread] 追加情報はありませんでした。")
    except Exception as e:
        log.exception(e)


def add_news(html, q):
    try:
        # 更新した数をカウント
        updated = 0
        now_notice = html.find('div', attrs={'id': 'now_notice_area'})
        for tr in now_notice.findAll('tr'):
            td = tr.findAll('td')
            news = map(text, td[0:2])
            # 文中にlinkが存在するか確認
            links = []
            if td[1].a is not None:
                for a in td[1].findAll('a'):
                    link = a.get('href')
                    links.append(link)
            urls = " ".join(links)
            # URLを付加
            news.append(urls)
            # DBに投げる
            news_id = db_news.add_news(*news)
            if news_id is not False:
                news.append(news_id)
                # Tweetする用に文章をフォーマット
                t = format_news(*news)
                # キューに投入
                q.put(t)
                updated += 1
            else:
                pass
        else:
            if updated is not 0:
                print ("[GetNewsThread] %s個の情報を追加しました。") % (updated)
            else:
                print ("[GetNewsThread] 追加情報はありませんでした。")
    except Exception as e:
        log.exception(e)


def text(td):
    return td.text.strip()
{'fraction_non_alphanumeric': 0.10720562390158173, 'fraction_numerical': 0.006736965436438196, 'mean_word_length': 1.3299215284885704, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3983441', 'n_tokens_mistral': 2411, 'n_tokens_neox': 2304, 'n_words': 463}