0

私が取り組んでいる Flask アプリ内で奇妙なものを見つけました。Flask API は、ニュース記事の URL を受け取り、それを (新聞ライブラリを使用して) クロールし、クロールされたテキストのカテゴリを予測することを目的としています。

ただし、Python (Spyder) で直接クローラーを実行すると、予想どおり記事のテキストが返されます。

from newspaper import Article

url='https://www.dev-insider.de/index.cfm?pid=15010&pk=676039'
article = Article(str(url) , browser_user_agent = 'Chrome', http_success_only=False)
article.download()
article.parse()
print(article.text)

これは魅力のように機能します。Flask アプリ内で同じコードを実行すると、クロールされた URL のナビゲーションに属する別の文字列が生成されます。

from flask import Flask
from newspaper import Article
from flask import request

app = Flask(__name__)
app.config['JSON_AS_ASCII'] = False
app.config['MAX_CONTENT_LENGTH'] = 1000000

#url='https://www.dev-insider.de/index.cfm?pid=15010&pk=676039'
@app.route('/test')
def bla():
    url = request.args.get('url')    
    article = Article(str(url) , browser_user_agent = 'Chrome', http_success_only=False)
    article.download()
    article.parse()
    text_raw = article.text
    return text_raw

if __name__ == '__main__':
    app.run(host='0.0.0.0', port=5000)

基本的に、最初のスニペットは完全な記事のテキストを返し、2 番目のスニペットは以下を返します。

次のページを参照してください: DevOps > Configuration-Management ログイン | 構成管理 登録 | ニュースレター

問題が十分に明確になったことを願っています。そうでない場合はお知らせください。

何が起こっているのですか?

4

1 に答える 1