【发布时间】:2018-06-28 10:28:15
【问题描述】:
我正在尝试编写一个 python 脚本来获取特定网页中使用的 url 数量:
TypeErrorTraceback (most recent call last)
<ipython-input-7-a3136853c4b2> in <module>()
30 return no_use
31
32 print(mining_webpage())
TypeError: mining_webpage() missing 2 required positional arguments: 'url' and 'list'
这是代码:
from bs4 import BeautifulSoup as bs
import requests
import re
import pandas as pd
import matplotlib as plt
def mining_webpage(url,list):
'''Finds the howmany websites are used in the webpage and counts its total number'''
reallink=[]
tokens=[]
list1=[]
no_use={}
link=url
word_list=list
text=requests.get(link).text
soup=bs(text)
for l in soup.find_all(href=re.compile('https')):
reallink.append(l.get('href').split('//'))
for lists in reallink:
'''print(lists[-1])'''
list1.append(lists[-1].split('.'))
'''print(list1)'''
for l in list1:
tokens.append(l[-2])
for word in tokens:
if word in no_use.keys():
no_use[word]+=1
else:
no_use[word]=1
return no_use
print(mining_webpage())
我知道这可能有一个简单的解决方案,但我真的不知道我做错了什么,这就是我写的练习。
【问题讨论】:
-
当您使用
url和list2 个参数定义它时,您没有将任何参数传递给mining_webpage()函数 -
如果即使我通过但我得到它没有定义
标签: python beautifulsoup python-requests