当前位置:首页 > 教育培训 >

html怎么获得动态数据(html如何展示大量数据)

来源:原点资讯(www.yd166.com)时间:2023-07-09 01:31:40作者:YD166手机阅读>>

pyspider示例代码一:利用phantomjs解决js问题

本系列文章主要记录和讲解pyspider的示例代码,希望能抛砖引玉。pyspider示例代码官方网站是http://demo.pyspider.org/。上面的示例代码太多,无从下手。因此本人找出一下比较经典的示例进行简单讲解,希望对新手有一些帮助。

示例说明:

如果页面中部分数据或文字由js生成,pyspider不能直接提取页面的数据。pyspider获取页面的代码,但是其中的js代码phantomjs,解决js代码执行问题。

使用方法:

方法一:在self.crawl函数中添加fetch_type="js"调用phantomjs执行js代码。

方法二:为函数添加参数@config(fetch_type="js")。

示例代码:

1、www.sciencedirect.com网站示例

#!/usr/bin/env python

# -*- encoding: utf-8 -*-

# vim: set et sw=4 ts=4 sts=4 ff=unix fenc=utf8:

# Created on 2014-10-31 13:05:52

import re

from libs.base_handler import *

class Handler(BaseHandler):

'''

this is a sample handler

'''

crawl_config = {

"headers": {

"User-Agent": "BaiDu_Spider",

},

"timeout":300,

"connect_timeout":100

}

def on_start(self):

self.crawl('http://www.sciencedirect.com/science/article/pii/S1568494612005741',timeout=300,connect_timeout=100,

callback=self.detail_page)

self.crawl('http://www.sciencedirect.com/science/article/pii/S0167739X12000581',timeout=300,connect_timeout=100,

age=0, callback=self.detail_page)

self.crawl('http://www.sciencedirect.com/science/journal/09659978',timeout=300,connect_timeout=100,

age=0, callback=self.index_page)

@config(fetch_type="js")

def index_page(self, response):

for each in response.doc('a').items():

url=each.attr.href

#print(url)

if url!=None:

if re.match('http://www.sciencedirect.com/science/article/pii/\w $', url):

self.crawl(url, callback=self.detail_page,timeout=300,connect_timeout=100)

@config(fetch_type="js")

def detail_page(self, response):

self.index_page(response)

self.crawl(response.doc('#relArtList > li > .cLink').attr.href, callback=self.index_page,timeout=300,connect_timeout=100)

return {

"url": response.url,

"title": response.doc('.svTitle').text(),

"authors": [x.text() for x in response.doc('.authorName').items()],

"abstract": response.doc('.svAbstract > p').text(),

"keywords": [x.text() for x in response.doc('.keyword span').items()],

}

针对pyspider中看不到内容,再写爬虫脚本的时候,直接用phantomjs的方法

,

栏目热文

html怎么与后端交互(html怎么与后端交互的)

html怎么与后端交互(html怎么与后端交互的)

前言在 html 文档中 <input type="file"> 标签每出现一次,一个 Fi...

2023-07-09 01:30:56查看全文 >>

html怎么获取表数据(html 获取数据库数据填充到表单)

html怎么获取表数据(html 获取数据库数据填充到表单)

#php js jquery功能片段#唯一需求:表格id。注意:因提交数据不能包含\n,所以要替换。呈现时可以替换回换行...

2023-07-09 01:30:11查看全文 >>

html怎么抓取页面数据(html怎么提取数据)

html怎么抓取页面数据(html怎么提取数据)

在日常的前端开发中,我们经常需要从网页中获取特定的数据,这就需要用到JavaScript来抓取网页内容。今天我就来分享一...

2023-07-09 01:46:05查看全文 >>

怎么在html显示从后台获取的数据(html查询后台数据)

怎么在html显示从后台获取的数据(html查询后台数据)

html简单教程简单登录界面以下是一个简单的html登录页面的代码,你可以根据自己的需要进行修改:<!DOCTYP...

2023-07-09 01:48:03查看全文 >>

html页面怎么获取后端数据(html初始数据怎么从后台获取)

html页面怎么获取后端数据(html初始数据怎么从后台获取)

本文内容已假定您已拥有一些 html 以及爬虫的基础知识需求背景这几天在做一款资源站产品,开发过程中需要一定的测试数据,...

2023-07-09 01:42:41查看全文 >>

html后端怎么建数据库(html调用数据库数据最简单方法)

html后端怎么建数据库(html调用数据库数据最简单方法)

一、目的做这个项目的初衷是因为我去年在微信卖老家水果,好多朋友下单后都问我快递单号,每天发货后我都要挨个甄别这个人是哪个...

2023-07-09 01:33:39查看全文 >>

html如何和后端交互(html页面如何与后台交互)

html如何和后端交互(html页面如何与后台交互)

毫无疑问,前后端分离开发是当前非常热门的技术方向,可以说是互联网项目开发的标配,如果你还不懂前后端分离,那肯定就 out...

2023-07-09 02:03:28查看全文 >>

html后端数据库用什么写(html可以通过什么获取数据库数据)

html后端数据库用什么写(html可以通过什么获取数据库数据)

说明screw,简洁好用的数据库表结构文档生成工具。特点,1、简洁、轻量、设计良好,2、多数据库支持,3、多种格式文档,...

2023-07-09 02:07:49查看全文 >>

html用什么语句接收后端数据(前端获取后端html数据)

html用什么语句接收后端数据(前端获取后端html数据)

selenium的定位元素方式是基于html语言构建的,所以学习web自动化是很有必要去学习htmlHTMLHTML 全...

2023-07-09 01:50:16查看全文 >>

前端获取请求的html数据(前端获取html代码怎么显示在页面)

前端获取请求的html数据(前端获取html代码怎么显示在页面)

meta常用于定义页面的说明,关键字,最后修改日期,和其它的元数据。这些元数据将服务于浏览器(如何布局或重载页面),搜索...

2023-07-09 01:47:32查看全文 >>

文档排行