所以我現在寫了這段代碼,為了從 cnn 獲取特定主題的新聞,我現在得到一個錯誤這里是代碼:
from bs4 import BeautifulSoup
import requests
import csv
import re
serch_term = input('What News are you looking for today? ')
url = f'https://edition.cnn.com/search?q={serch_term}'
page = requests.get(url)
doc = BeautifulSoup(page, "html.parser")
page_text = doc.find_all(class_="cnn-search__result-headline")
print(page_text)
但是我收到了這個錯誤,我已經嘗試了很多東西,但沒有一個對我有用
What News are you looking for today? coronavirus
Traceback (most recent call last):
File "c:\Users\user\Desktop\Informatik\Praktik\Projekte\Python\news_automation\main.py", line 10, in <module>
doc = BeautifulSoup(page, "html.parser")
File "C:\Users\user\AppData\Local\Programs\Python\Python310\lib\site-packages\bs4\__init__.py", line 312, in __init__
elif len(markup) <= 256 and (
TypeError: object of type 'Response' has no len()
我已經用谷歌搜索并嘗試了很多東西,但都沒有奏效有人知道出了什么問題嗎?所以,
uj5u.com熱心網友回復:
我自己測驗過,你應該把這行代碼改成如下:
從:source = requests.get(url) 到:page = source.text
額外資訊:
我發現你可以如下使用這個search.api.cnn.io并在我撰寫代碼時直接制作成json,你需要做的是提取你需要的資訊。
url = f"search.api.cnn.io/content?q={serch_term}"
extra_parameters_sample_url"https://search.api.cnn.io/content?q=coronavirus&sort=newest&category=business,us,politics,world,opinion,health&size=100&from=0"
source = requests.get(url).text
json_reponse = json.loads(source)
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/443033.html
標籤:Python python-3.x 网页抓取 美丽的汤 蟒蛇请求
