爬取动态页面2

动态页面的爬取思路:

  1.  ajax  -----数据放在 json 中,在里面是否有url

  2.  js  数据   通过    搜索原页面上的数据关键字    :ctrl + f   , 全局搜索关键字

例子:

开始网站  url = ‘https://www.xuexi.cn/‘

爬取的页面1:

url 1= ‘https://www.xuexi.cn/f997e76a890b0e5a053c57b19f468436/018d244441062d8916dd472a4c6a0a0b.html‘

需求:爬取url1 所有新闻的详情页面

分析思路:图示

  用 js 数据动态生成的思路 :   通过 搜索原页面上的数据关键字    :ctrl + f   , 全局搜索关键字

爬取的页面2:

url 2= ‘https://www.xuexi.cn/261c9a142ef8e6375ed554815a26d585/f2d8ff735982530b7a8c9bb90fa99f68.html‘

需求:爬取url2 所有新闻的详情页面

分析思路:

  先按思路 ,js 动态生成数据的思路,找,没找到在按ajax 动态生成数据的思路。

  用 ajax动态生成的思路 :  ajax  -----数据放在 json 中,在里面是否有数据。(此处为ajax)

图示:

代码:

import requests

分析之后得到获取数据的url地址: url1 文需求1 的数据地址,url2 为需求2 的数据获取地址。
url1 = ‘https://www.xuexi.cn/f997e76a890b0e5a053c57b19f468436/data018d244441062d8916dd472a4c6a0a0b.js‘
url2 = ‘https://www.xuexi.cn/lgdata/261c9a142ef8e6375ed554815a26d585/f2d8ff735982530b7a8c9bb90fa99f68.json‘

headers={
    ‘user-agent‘:‘Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.67 Safari/537.36‘
}
res1 = requests.get(url=url2,headers=headers)
res2 = requests.get(url=url2,headers=headers) 

print(res1.content.decode())
print(res2.content.decode())

原文地址:https://www.cnblogs.com/knighterrant/p/10575523.html

时间: 2024-10-08 10:27:20

爬取动态页面2的相关文章

python --selenium+phantomjs爬取动态页面广告源码

背景:利用爬虫,爬取网站页面广告元素,监控爬取元素的数目,定时发送监控邮件 #!/usr/bin/env python2.7 # -*- coding: utf-8 -*- ''' @xiayun @[email protected] #爬取网站内容,利用phantomjs:IP代理+修改UA+动态页面执行JS ''' from selenium import webdriver from selenium.webdriver.common.desired_capabilities import

python scrapy爬取动态页面

preface:最近学习工作之外,有个异性朋友需要爬取动态网页的要求,输入关键词爬取某个专利网站在该关键词下的一些专利说明.以往直接python urllib2可破,但是那只是对于静态网页可破,但是对于用js等其他的生成的动态网页的话,则貌似不行(没试过).然后在网上找了些资料,发现scrapy结合selenium包好像可以.(之所以这么说,暂时卤主也还没实现,先记录下来.) #=====================根据官网中简单的介绍作个人理解=======================

selenium+phantomjs爬取动态页面数据

1.安装selenium pip/pip3 install selenium 注意依赖关系 2.phantomjs for windows 下载地址:http://phantomjs.org/download.html phantomjs-2.1.1-windows 仅支持64位系统 phantomjs-1.9.7-windows 支持32位系统,更早的版本没测试过 把下载好的安装包bin目录下的phantomjs.exe文件拷贝到python安装目录下的Scripts目录下 3.模拟浏览器操作

爬取动态网页中关于构造浏览器头的注意事项

在原来爬取动态网页图片中,获取到了图片的实际地址,但是下载下来的图片是损坏的,究其原因,是服务器端阻止了访问,但是观察发现 headers = {'User-Agent': random.choice(UserAgent_List), 'Accept': "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8", 'Accept-Encoding': 'gzip', } 浏览器头已经构造好了

python爬取动态网页

静态网页:根据url即可方便的爬取 动态网页:分为两种:一种是通过F12查看控制台的xhr等文件,找到包含所要爬取的内容的文件,发现这个文件的url路径跟页码有联系,那么就可以根据构造的url来进行访问爬取了.还有一种情况是查看了包含所要爬取内容的文件,发现文件url是固定不变的或者跟页码没有关系,这个时候可以通过简单的模拟浏览器点击行为来请求网页再爬取,这种方案执行效率较慢,不适于多页爬取的情况.代码如下: 1 def parse(self, response): 2 print 'parse

爬虫再探实战(三)———爬取动态加载页面——selenium

自学python爬虫也快半年了,在目前看来,我面临着三个待解决的爬虫技术方面的问题:动态加载,多线程并发抓取,模拟登陆.目前正在不断学习相关知识.下面简单写一下用selenium处理动态加载页面相关的知识.目标——抓取页面所有的高考录取分数信息. 对于动态加载,开始的时候是看到Selenium+Phantomjs的强大,直接就学的这个.打开网页查看网页源码(注意不是检查元素)会发现要爬取的信息并不在源码里面.也就是说,从网页源码无法通过解析得到数据.Selenium+Phantomjs的强大一方

python爬取动态生成的网页——以百度手机助手为例

在爬取js动态生成的页面时,直接打开页面是获取不到内容的,比如,我在爬取百度手机助手的应用时,就遇到了这样一个问题.在搜索旅游类应用时,返回数据有几页的内容,但是不管你翻到第几页,查看源代码发现都一样,都是第一页内容的源代码.分析原因我觉得可能是这样的:假设百度应用一页内容有八个应用,你把查询提交后他把内容的前8个生成一个html,然后再你翻页时,通过js,ajax等方式替换原来的8个应用,比如你选择第五页时,把返回应用列表的33-40个应用替换原来的1-8的内容.(应该是ajax或者其他表单提

爬取动态图片—以百度图片为例

一:何谓动态加载图片 所谓动态加载图片即指html刚加载时,图片时没有的,然后通过json发生有关图片的数据,在插入到html里面去,以到底快速打开网页的目的,那么问题来了?我们如何找到加载文件的json文件呢?而这个问题正是我们实现爬取百度图片的第一步,让小可爱告诉你怎么做吧. 我们以表情包这个关键字为例,如下图 小可爱在百度图片搜索表情包来到上图页面,然后按F12来到开发者页面, 我们点击二个json文件 如: ①https://image.baidu.com/search/acjson?t

[爬虫]采用Go语言爬取天猫页面

最近工作中有一个需求,需要爬取天猫商品的信息,整个需求的过程如下: 修改后端广告交易平台的代码,从阿里上传的素材中解析url,该url格式如下: https://handycam.alicdn.com/slideshow/26/7ef5aed1e3c39843e8feac816a436ecf.mp4?content=%7B%22items%22%3A%5B%7B%22images%22%3A%5B%22https%3A%2F%2Fasearch.alicdn.com%2Fbao%2Fupload