Comments (5)
I find that due to many td
's inner_text_len < MIN_LEN
, so table can't get a high score .
And I think the score_paragraphs
func need calculate from deep to shallow
from python-readability.
Algorithm is probabilistic, it will never process 100% of sources correctly.
Advertising and input forms also use tables with short texts and images, so how one could assume the tables with short tests to have no advertising (and no user forms?
I remind you that this algorithm was created for articles processing, not for arbitrary text extraction.
from python-readability.
Could you explain :
I remind you that this algorithm was created for articles processing, not for arbitrary text extraction.
I think articles processing
means : get title and article main content (That 's I want and why I use readability).
But I don't understand arbitrary text extraction
, translate(use google translation) to Chinese means: random text extraction .(random??? I doubt google's explanation)
And about tr
,
I think there is not article content would wraped by tr
, at least should remove tr
from condidates.
from python-readability.
http://ecp.sgcc.com.cn/html/project/014002007/9990000000010135023.html
By "articles" , usually "news articles" are meant. This is a page, but not a news article (guessing from how it looks like, at least).
You might have a set of different rules for this kind of pages because the same set of rules won't work equally good for both.
But for year 2016, a better approach would be to use machine learning (of course if you have a big corpus) -- boosting trees (like ones made by xgboost) should help.
Otherwise, if you have just several sources, it's easier to set up the rules manually for each source: something like ".article" for source1, "div[1]/div[1]" for source2, etc.
The algorithm from this library is made only for quick news article extraction, to process maybe 90% of sources automatically, but others to be processed manually anyway.
If you will change the rules -- it will process different 90% of articles, but with any single set of rules you will never process all 100% of the articles correctly.
Manually or with machine learning methods, you can improve the success ratio -- but only if you have a very big corpus.
from python-readability.
Ok, I understand, thank you !
from python-readability.
Related Issues (20)
- Orphan links in doc.summary()
- Inlining images?
- re._pattern_type has been removed in favor of re.Pattern in Python 3.7
- No chance for GitHub commit page? HOT 1
- RuntimeWarning and Correct invocation on the shell command line (not python script) HOT 1
- Missing <p>-text
- REGEXES["divToPElementsRe"] logical error HOT 3
- Error when using positive_keywords (or negative_keywords) argument with python >= 3.7 HOT 1
- .text may guess the encoding incorrectly HOT 4
- Does not handle github pages
- <p> wrongly inserted before <i> or <b>
- Problems with thecyberwire.com
- Circular import error for pip install readability-lxml HOT 4
- isProbablyReaderable HOT 3
- Issue with utf8 and HTML entities HOT 2
- Last two commands in the "usage" section are incorrect
- `test_many_repeated_spaces` fails on darwin python 3.8, 3.9 & 3.10
- Consider switching from lxml's clean_html for enhanced security (and possibly performance) HOT 5
- Summary is fooled by a modal popup
- Readability of MSN articles
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from python-readability.