|
测试了一下, python驱动phantomJS, 爬取楼主给出的那个网址, 能够正确的得到结果.
测试代码如下:
- #-*_coding:utf8-*-
- # 使用xsltExtractor类的示例程序
- # xlst通过GooSeeker API获得
- import time
- from urllib import request
- from lxml import etree
- from gooseeker import GsExtractor
- from selenium import webdriver
- class PhantomSpider:
- def getContent(self, url):
- browser = webdriver.PhantomJS(executable_path='C:\\phantomjs-2.1.1-windows\\bin\\phantomjs.exe')
- browser.get(url)
- time.sleep(3)
- html = browser.execute_script("return document.documentElement.outerHTML")
- output = etree.HTML(html)
- return output
- def saveContent(self, filepath, content):
- file_obj = open(filepath, 'a+', encoding='UTF-8')
- file_obj.write(content)
- file_obj.close()
- doubanExtra = GsExtractor()
- # 下面这句调用gooseeker的api来设置xslt抓取规则
- # 第一个参数是app key,请到GooSeeker会员中心申请
- # 第二个参数是规则名,是通过GooSeeker的图形化工具: 谋数台MS 来生成的
- doubanExtra.setXsltFromAPI("31d24931e043e2d5364d03b8ff9cc77e" , "澳客亚盘皇冠_szw10")
- url = "http://m.okooo.com/match/change.php?mid=885202&pid=250&Type=Handicap"
- totalpages = 5
- doubanSpider = PhantomSpider()
- print("正在爬取", url)
- content = doubanSpider.getContent(url)
- outputxml = doubanExtra.extract(content)
- outputfile = "result" + ".xml"
- doubanSpider.saveContent(outputfile , str(outputxml))
- print("爬取结束")
复制代码 得到的结果文件如下图:
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|
共 7 个关于本帖的回复 最后回复于 2017-5-3 17:08