2017-07-02 7 views
-3

私はこのコードに問題があります。 これは最初Python 3、xml、coursera

import urllib.request, urllib.parse, urllib.error 
import xml.etree.ElementTree as ET 
from urllib.request import urlopen 
import ssl 


ctx = ssl.create_default_context() 
ctx.check_hostname = False 
ctx.verify_mode = ssl.CERT_NONE 

url ='http://py4e-data.dr-chuck.net/comments_2403.html' 
html = urlopen(url, context=ctx).read() 
print('Retrieving', url) 
uh = urllib.request.urlopen(url) 
data = uh.read() 
data = data.decode() 
print('Retrieved', len(data), 'characters') 
tree = ET.fromstring(data) 

results = tree.findall('comments/comment/count') 
print(tree) 

そして、これはその出力です:

Retrieving http://py4e-data.dr-chuck.net/comments_2403.html 
Retrieved 3548 characters 
[] 
<Element 'html' at 0x02F11930> 

それが何を意味します?リストやデータはどこですか?助けてください!!!

答えて

0

私はこのコードを修正しましたが、現在彼は働いています。問題はテキスト上にありました。このことは忘れました。

import urllib.request 
import xml.etree.ElementTree as ET 

url = input('Enter location:') 
print ('Retrieving', url) 
site = urllib.request.urlopen(url) 
data = site.read().decode() 
print ('Retrieved',len(data),'characters') 

tree = ET.fromstring(data) 
info = tree.findall('comments/comment') 
lst=[] 

for stuff in info: 
    numbers = int(stuff.find('count').text) 
    lst.append(numbers) 
print('Count:',len(lst)) 
print("Sum:", sum(lst))