私は怠け者だから、私は就職のためにウェブサイトをチェックし、会社のウェブページのすべての仕事を返すので、Pythonプログラムを書いている。ここでPython MD5で同じコンテンツをハッシュすると、異なるハッシュが返される
は、私が現在持っている問題は、私はウェブサイトのhtmlコードの両方をハッシュということである
import requests
from bs4 import BeautifulSoup
import sys
import os
import hashlib
reload(sys)
sys.setdefaultencoding('utf8')
res = requests.get('WEBSITE URL', verify=False)
res.raise_for_status()
filename = "JobWebsite.txt"
def StartUp():
if not os.path.isfile(filename):
try:
jobfile = open(filename, 'a')
jobfile = open(filename, 'r+')
print("[*] Succesfully Created output file")
return jobfile
except:
print("[*] Error creating output file!")
sys.exit(0)
else:
try:
jobfile = open(filename, 'r+')
print("[*] Succesfully Opened output file")
return jobfile
except:
print("[*] Error opening output file!")
sys.exit(0)
def AnyChange(htmlFile):
fileCont = htmlFile.read()
FileHash = hasher(fileCont, "File Code Hashed")
WebHash = hasher(res.text, "Webpage Code Hashed")
!!!!! Here is the Problem
print ("[*] File hash is " + str(FileHash))
print ("[*] Website hash is " + str(WebHash))
if FileHash == WebHash:
print ("[*] Jobs being read from file!")
num_of_jobs(fileCont)
else:
print("[*] Jobs being read from website!")
num_of_jobs(res.text)
deleteContent(htmlFile)
writeWebContent(htmlFile, res.text)
def hasher(content, message):
content = hashlib.md5(content.encode('utf-8'))
return content
def num_of_jobs(htmlFile):
content = BeautifulSoup(htmlFile, "html.parser")
elems = content.select('.search-result-inner')
print("[*] There are " + str(len(elems)) + " jobs available!")
def deleteContent(htmlFile):
print("[*] Deleting Contents of local file! ")
htmlFile.seek(0)
htmlFile.truncate()
def writeWebContent(htmlFile, content):
htmlFile = open(filename, 'r+')
print("[*] Writing Contents of website to file! ")
htmlFile.write(content.encode('utf-8'))
jobfile = StartUp()
AnyChange(jobfile)
(はい、私はコードがしかし、私はちょうどそれが働いて取得しようとしていますjanckyである知っている)、これまでに私のコードですとファイルのHTMLコード。しかし、ハッシュの両方が一致しない、これまでのように、私は確信していないと、コンテンツがファイルに保存されているものかもしれないと推測することができます。ハッシュが離れすぎていないですが、それはまだIf文が毎回失敗し
Breakpoint in Program with hashes
は、午前1時のようで、これに取り組んで、ちょうど私の頭の上に飛んでました。ただし、変更後のハッシュ値はまだ異なります。私はそれをもっと見るつもりで、私はそれを修正すれば私は戻って報告します。 –