-3
我想登录到一个网站,获取数据,将其保存到一个文件,一段时间后获取新的数据,并与旧的(保存的)数据进行比较,并打印,如果事情已经改变。我怎么做?登录正在工作,但比较不是。为什么?Python监控网站的变化
预先感谢您!
我的代码:
# -*- coding: utf-8 -*-
import urllib
import urllib2
import cookielib
import time
def login():
username = "username"
password = "password"
cj = cookielib.CookieJar()
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))
login_data = urllib.urlencode({'login_username' : username, 'login_password' : password})
opener.open('lol.com/login', login_data)
resp = opener.open('lol.com/login')
data = resp.read()
print data
write_data(data)
def write_data(data):
file = open("htmlString", "w")
file.write(data)
file.close()
monitor(data)
def monitor(data):
string1 = open("htmlString", "r").read()
string2 = data
while True:
time.sleep(5)
login()
if string1 == string2:
print "Nothing has changed"
else:
print "Something has changed"
login()
那到底是什么不工作? 'monitor',至多(我不知道你的代码是否能得到这么多),只能用于检测一个变化。之后,它没有什么比较新的东西,因为'data'是固定的。 – roganjosh
它甚至不打印“没有任何改变”。那是一个问题。第二个问题是,正如你所说,只是比较一次。我怎样才能解决这个问题?我真的不知道.. – Hamiraro
那么,那些'打印'进来'if' /'else',所以你的代码不会那么远。您需要在流程的早期进行调试。如果有错误,你应该把它放在你的问题。 – roganjosh