当前位置: 首页>>代码示例>>Python>>正文


Python Article.load_from_url方法代码示例

本文整理汇总了Python中article.Article.load_from_url方法的典型用法代码示例。如果您正苦于以下问题:Python Article.load_from_url方法的具体用法?Python Article.load_from_url怎么用?Python Article.load_from_url使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在article.Article的用法示例。


在下文中一共展示了Article.load_from_url方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: article_api

# 需要导入模块: from article import Article [as 别名]
# 或者: from article.Article import load_from_url [as 别名]
def article_api(version=1):
    """ Obtain information about an article, given its URL or id """

    if not (1 <= version <= 1):
        return better_jsonify(valid=False, reason="Unsupported version")

    if request.method == "GET":
        url = request.args.get("url")
        uuid = request.args.get("id")
    else:
        url = request.form.get("url")
        uuid = request.form.get("id")
    if url:
        url = url.strip()[0:_MAX_URL_LENGTH]
    if uuid:
        uuid = uuid.strip()[0:_MAX_UUID_LENGTH]
    if url:
        # URL has priority, if both are specified
        uuid = None
    if not url and not uuid:
        return better_jsonify(valid=False, reason="No url or id specified in query")

    with SessionContext(commit=True) as session:

        if uuid:
            a = ArticleProxy.load_from_uuid(uuid, session)
        elif url.startswith("http:") or url.startswith("https:"):
            a = ArticleProxy.load_from_url(url, session)
        else:
            a = None

        if a is None:
            return better_jsonify(valid=False, reason="Article not found")

        if a.html is None:
            return better_jsonify(valid=False, reason="Unable to fetch article")

        # Prepare the article for display
        a.prepare(session)
        register = a.create_register(session, all_names=True)
        # Fetch names of article topics, if any
        topics = (
            session.query(ArticleTopic).filter(ArticleTopic.article_id == a.uuid).all()
        )
        topics = [dict(name=t.topic.name, id=t.topic.identifier) for t in topics]

    return better_jsonify(
        valid=True,
        url=a.url,
        id=a.uuid,
        heading=a.heading,
        author=a.author,
        ts=a.timestamp.isoformat()[0:19],
        num_sentences=a.num_sentences,
        num_parsed=a.num_parsed,
        ambiguity=a.ambiguity,
        register=register,
        topics=topics,
    )
开发者ID:vthorsteinsson,项目名称:Reynir,代码行数:61,代码来源:api.py

示例2: parse_article

# 需要导入模块: from article import Article [as 别名]
# 或者: from article.Article import load_from_url [as 别名]
    def parse_article(self, seq, url, helper):
        """ Parse a single article """

        logging.info("[{1}] Parsing article {0}".format(url, seq))
        t0 = time.time()
        num_sentences = 0
        num_parsed = 0

        # Load the article
        with SessionContext(commit=True) as session:
            a = Article.load_from_url(url, session)
            if a is not None:
                a.parse(session)
                num_sentences = a.num_sentences
                num_parsed = a.num_parsed

        t1 = time.time()
        logging.info(
            "[{3}] Parsing of {2}/{1} sentences completed in {0:.2f} seconds".format(
                t1 - t0, num_sentences, num_parsed, seq
            )
        )
开发者ID:vthorsteinsson,项目名称:Reynir,代码行数:24,代码来源:scraper.py


注:本文中的article.Article.load_from_url方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。