汽车之家车型参数配置数据爬取

import scrapy

import json

import re

import execjs

import demjson

关键代码:

def parse_config(self, response):

    s = re.findall(r'<script>\(function\((.*?)</script>', response.text, re.M | re.S)

    ss =""

    for  j in range(0, len(s)):

        ss +="(function(" + s[j]

    jsstr ='var jsdom = require("jsdom");var { JSDOM } = jsdom; var dom = new JSDOM();         window = dom.window; document = window.document;'

    jsstr += ss

    xx ='''function getcss() {

    s = "";

    for(x in document.styleSheets){

        for (j in document.styleSheets[x]){

            //if(document.styleSheets[x][j] instanceof CSSRuleList){

            xx = document.styleSheets[x][j];

            for(ss in xx){

                s += xx[ss].cssText;

            }

            //}

        }    

    }

    return s;

    }'''

    jsstr += xx

    jsexe = execjs.compile(jsstr, cwd='./node_modules')

    cssstr = jsexe.call("getcss")

    print(cssstr)

解决字体css替换问题

需要安装node.js

导入jsdom模块到当前项目目录下,用来运行js代码,获取生成的css代码

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容