Как не выйти из символьной сущности HTML в Java?

Из вашего описания звучит так, что вы не столько заинтересованы в обработке данных, сколько в том, как они поступают, а в том, чтобы избежать передачи миллиона элементов list назад.

Есть более простой способ сделать это: просто поместить данные в файл. Например:

def target_fnc(arg):
    fd, path = tempfile.mkstemp(text=True)
    with os.fdopen(fd) as f:
        for i in xrange(1000000):
            f.write('dvsdbdfbngd\n')
    return path

def process_args(some_args):
    pool = Pool(16)
    for result in pool.imap_unordered(target_fnc, some_args):
        with open(result) as f:
            for element in f:
                yield element

Очевидно, что если ваши результаты могут содержать символы новой строки или не являются строками и т. Д., Вы захотите использовать файл csv, numpy и т. Д. Вместо простой текстовый файл, но идея та же.

Тем не менее, даже если это проще, обычно есть преимущества для обработки данных по частям за раз, поэтому разбивка ваших задач или использование Queue (как предлагают два других ответа) может быть лучше, если недостатки (соответственно, необходимость разбить задачи или иметь возможность использовать данные так же быстро, как они создаются) не являются нарушителями соглашения.

133
задан tk_ 18 October 2019 в 02:06
поделиться

1 ответ

Я использовал Apache Commons StringEscapeUtils.unescapeHtml4 () для этого:

Отменяет экранирование строки, содержащей объект экранирует строку, содержащую фактические символы Unicode соответствующие побегам. Поддерживает Сущности HTML 4.0.

174
ответ дан 24 November 2019 в 00:01
поделиться
Другие вопросы по тегам:

Похожие вопросы: