import requests
from lxml import etree
from chaojiying import Chaojiying_Client
import sys
from PyQt4.QtWebKit import *
from PyQt4.QtGui import *
from PyQt4.QtCore import *
class Render(QWebPage): # 用来渲染网页,将url中的所有信息加载下来并存到一个新的框架中
def __init__(self,url):
self.app = QApplication(sys.argv)
QWebPage.__init__(self)
self.loadFinished.connect(self._loadFinished)
self.mainFrame().load(QUrl(url))
self.app.exec_()
def _loadFinished(self, result):
self.frame = self.mainFrame()
self.app.quit()
if __name__ == '__main__':
url="http://hsk.blcu.edu.cn/Login"
headers={
"User-Agent":"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4455.2 Safari/537.36"
}
#超级鹰
chaojiying = Chaojiying_Client('zhouchengbin', 'zhchb19419518', '915817') # 用户中心>>软件ID 生成一个替换 96001
r=Render(url)
page_text=r.frame.toHtml()
tree=etree.HTML(page_text)
code_img_url="http://hsk.blcu.edu.cn"+tree.xpath('/html/body/div/div[2]/div/div/div/div[1]/form/div[3]/div[2]/img/@src')[0]
img_code=requests.get(url=code_img_url,headers=headers).content#得到验证码
chaojiying = Chaojiying_Client('zhouchengbin', 'zhchb19419518', '915817')
print(chaojiying.PostPic(img_code, 4004).get('pic_str'))