TypeError:find()不接受任何参数输入

时间:2020-08-25 00:46:27

标签: python python-3.x web-scraping beautifulsoup python-requests

使用Python的新手程序员!

我正在尝试使用python 3.8.5运行以下代码,但标题中始终出现错误。

免责声明:该代码不是我的原始代码,而是来自2017年发布的YouTube视频。我将在此处提供其链接以供参考:https://www.youtube.com/watch?v=ng2o98k983k

import requests
import urllib
import getpass

source = requests.get('http://coreyms.com').text

soup = BeautifulSoup(source, 'lxml')

article = soup.find('article').prettify()

# print(article)

# summary = article.find('div', class_='entry-content').p.text
# print(summary)

vid_src = article.find('iframe', class_= 'youtube-player')['src']
print(vid_src)

我已经玩了几天,改变了我的python版本并通过终端下载了其他文件,但是我仍然很困惑。

任何/所有帮助都将受到赞赏!非常感谢。

1 个答案:

答案 0 :(得分:0)

在代码中删除对.prettify()的呼叫。

如果调用此函数,它将返回“漂亮字符串”,并且您将丢失BeautifulSoup对象。

import requests
import urllib
import getpass

source = requests.get('http://coreyms.com').text

soup = BeautifulSoup(source, 'lxml')

article = soup.find('article')

# print(article)

# summary = article.find('div', class_='entry-content').p.text
# print(summary)

vid_src = article.find('iframe', class_= 'youtube-player')['src']
print(vid_src)

输出

https://www.youtube.com/embed/z0gguhEmWiY?version=3&rel=1&fs=1&autohide=2&showsearch=0&showinfo=1&iv_load_policy=1&wmode=transparent