Фильтрация по размеру текста

Как спарсить статьи с заданного списка сайтов 1.0

Available for license holders
  • Автор темы Автор темы katim
  • Дата начала Дата начала

katim

A-Parser Pro License
A-Parser Pro
Всем привет!

Думаю у многих возникал вопрос как напарсить статьи с сайтов.

Лучше что придумал на данный момент это парсить список урлов (думаю тут ни у кого не возникает проблем) а потом парсером HTML::TextExtractor вытягивать контент.

Но, есть ньюансы - как заставить вытягивать только статью без другого контента который идет на странице, и как сохранять каждую статью с целевого сайта в отдельный файл?

Сайты со статьями для примера:
http://www.personal-loan.my/al-rajhi-personal-loan/236/
http://www.auctioncope.com/guide/how-to-remove-paypal-limitation-and-restore-account-access/
http://www.acaloans.com.au/personal-finance/
 
8z3yO.png

Как вариант, проверять размер текста и отсеивать маленькие. В примере я задал размер > 1000 символов. Это не гарантирует, что будут найдены все именно статьи, но все же отсеивает много ненужного.
Относительно сохранения, то в примере результат сохраняется в файл с именем домена и датой.
Код:
eyJwcmVzZXQiOiJkZWZhdWx0IiwidmFsdWUiOnsicHJlc2V0IjoiZGVmYXVsdCIs
InBhcnNlcnMiOltbIkhUTUw6OlRleHRFeHRyYWN0b3IiLCJkZWZhdWx0Iix7InR5
cGUiOiJvdmVycmlkZSIsImlkIjoiZm9ybWF0cmVzdWx0IiwidmFsdWUiOiJbJSBG
T1JFQUNIIHRleHQgSU4gdGV4dHMgJV1cblslIHRleHRzLiR7bG9vcC5pbmRleH0u
dGV4dC5sZW5ndGggPiAxMDAwID8gdGV4dHMuJHtsb29wLmluZGV4fS50ZXh0IDog
JycgLSVdXG5bJSBFTkQgJV0ifV1dLCJyZXN1bHRzRm9ybWF0IjoiJHAxLnByZXNl
dCIsInJlc3VsdHNTYXZlVG8iOiJmaWxlIiwicmVzdWx0c0ZpbGVOYW1lIjoicG9z
LyRxdWVyeS5kb21haW4tJGRhdGVmaWxlLmZvcm1hdCgpLnR4dCIsImFkZGl0aW9u
YWxGb3JtYXRzIjpbXSwicmVzdWx0c1VuaXF1ZSI6Im5vIiwicXVlcnlGb3JtYXQi
OlsiJHF1ZXJ5Il0sInVuaXF1ZVF1ZXJpZXMiOmZhbHNlLCJzYXZlRmFpbGVkUXVl
cmllcyI6ZmFsc2UsIml0ZXJhdG9yT3B0aW9ucyI6eyJvbkFsbExldmVscyI6ZmFs
c2UsInF1ZXJ5QnVpbGRlcnNBZnRlckl0ZXJhdG9yIjpmYWxzZX0sInJlc3VsdHNP
cHRpb25zIjp7Im92ZXJ3cml0ZSI6ZmFsc2V9LCJkb0xvZyI6Im5vIiwia2VlcFVu
aXF1ZSI6Ik5vIiwibW9yZU9wdGlvbnMiOmZhbHNlLCJyZXN1bHRzUHJlcGVuZCI6
IiIsInJlc3VsdHNBcHBlbmQiOiIiLCJxdWVyeUJ1aWxkZXJzIjpbeyJzb3VyY2Ui
OiJxdWVyeSIsInR5cGUiOiJleHRyYWN0RG9tYWluIiwidG8iOiJkb21haW4ifV0s
InJlc3VsdHNCdWlsZGVycyI6W3sic291cmNlIjpbMCxbInRleHRzIiwidGV4dCJd
XSwidHlwZSI6InJlbW92ZUh0bWwiLCJhcnJheSI6InRleHRzIiwidG8iOiJ0ZXh0
In1dLCJjb25maWdPdmVycmlkZXMiOltdfX0=
 
Спасибо, вроде работает хорошо - буду тестировать. Спасибо
 
подскажите пжл, как тут добавить перенос
На данный момент такой возможности нету: http://a-parser.com/threads/1804/
так же пробовал спарсить тут морду - http://xnspy.com/, получился пустой файл
Проанализируйте сайт. На первый взгляд, там JS подгружает инфу...
 
Разбивать вручную в текстовом редакторе.
 
Пресет работает отлично, но в сохраняемом файле остается много пустых строк, подскажите пож. как их удалить?
 
остается много пустых строк, подскажите пож. как их удалить?
Измените немного формат результата:
Код:
[% FOREACH text IN texts;
    texts.${loop.index}.text.length > 1000 ? texts.${loop.index}.text _ "\n" : '';
END %]
 
Как записывать результат, который больше 1000 символов?
 
Скажите пожалуйста, а как сделать тоже самое, только что бы брало с тегами?
 
Смысл HTML::TextExtractor чтобы текст собирать. Если нужны и теги, то это другой парсер совсем нужно делать

А какой алгоритм у ТекстЭктрактора? Это какая-то регулярка, которая вытягивает текст, а потом чистит хтмл? Или вначале режется хтмл, а потом собираются куски длинной больше Х символов?

Возникла необходимость собирать статьи по урлам с разных сайтов, так вот а-парсер справляется весьма неплохо, собирает почти без мусора, но режет весь хтмл, а мне нужно чтобы картинки, заголовки и видео оставалось в контенте. Можно ли как-то использовать алгоритм сбора из текст-экстрактора? Но не фиьлтровать определеные HTML теги в тексте?
 
А какой алгоритм у ТекстЭктрактора? Это какая-то регулярка, которая вытягивает текст, а потом чистит хтмл? Или вначале режется хтмл, а потом собираются куски длинной больше Х символов?

Возникла необходимость собирать статьи по урлам с разных сайтов, так вот а-парсер справляется весьма неплохо, собирает почти без мусора, но режет весь хтмл, а мне нужно чтобы картинки, заголовки и видео оставалось в контенте. Можно ли как-то использовать алгоритм сбора из текст-экстрактора? Но не фиьлтровать определеные HTML теги в тексте?
Там сложный алгоритм, и я не могу его рассказать. Алгоритм сбора из текст-экстрактора нельзя использовать, для вашей задачи нужно писать отдельный парсер который будет работать по нужной вам логике
 
Назад
Верх