Archive Bloomberg articles first
This commit is contained in:
		| @@ -9,6 +9,7 @@ import time | ||||
| from feeds import hackernews, reddit, tildes | ||||
|  | ||||
| OUTLINE_API = 'https://outlineapi.com/article' | ||||
| ARCHIVE_API = 'https://archive.fo/submit/' | ||||
| READ_API = 'http://127.0.0.1:33843' | ||||
|  | ||||
| INVALID_FILES = ['.pdf', '.png', '.jpg', '.gif'] | ||||
| @@ -22,6 +23,22 @@ def list(): | ||||
|     return feed | ||||
|  | ||||
| def get_article(url): | ||||
|     if 'bloomberg.com' in url: | ||||
|         try: | ||||
|             logging.info('Article from Bloomberg, archiving first...') | ||||
|             data = {'submitid': '9tjtS1EYe5wy8AJiYgVfH9P97uHU1IHG4lO67hsQpHOC3KKJrhqVIoQG2U7Rg%2Fpr', 'url': url} | ||||
|             r = requests.post(ARCHIVE_API, data=data, timeout=20, allow_redirects=False) | ||||
|             if r.status_code == 200: | ||||
|                 logging.error('Submitted for archiving. Skipping to wait...') | ||||
|                 return '' | ||||
|             elif 'location' in r.headers: | ||||
|                 url = r.headers['location'] | ||||
|             else: | ||||
|                 raise Exception('Bad response code ' + str(r.status_code)) | ||||
|         except BaseException as e: | ||||
|             logging.error('Problem archiving article: {}'.format(str(e))) | ||||
|             return '' | ||||
|  | ||||
|     try: | ||||
|         params = {'source_url': url} | ||||
|         headers = {'Referer': 'https://outline.com/'} | ||||
| @@ -86,11 +103,14 @@ def update_story(story): | ||||
|     return True | ||||
|  | ||||
| if __name__ == '__main__': | ||||
|     test_news_cache = {} | ||||
|     nid = 'jean' | ||||
|     ref = 20802050 | ||||
|     source = 'hackernews' | ||||
|     test_news_cache[nid] = dict(id=nid, ref=ref, source=source) | ||||
|     news_story = test_news_cache[nid] | ||||
|     update_story(news_story) | ||||
|     #test_news_cache = {} | ||||
|     #nid = 'jean' | ||||
|     #ref = 20802050 | ||||
|     #source = 'hackernews' | ||||
|     #test_news_cache[nid] = dict(id=nid, ref=ref, source=source) | ||||
|     #news_story = test_news_cache[nid] | ||||
|     #update_story(news_story) | ||||
|  | ||||
|     print(get_article('https://www.bloomberg.com/news/articles/2019-09-23/xi-s-communists-under-pressure-as-high-prices-hit-china-workers')) | ||||
|  | ||||
|     print('done') | ||||
|   | ||||
		Reference in New Issue
	
	Block a user