python爬取网页中javascript动态添加的内容(二)

由于直接爬取整个含有javascript的网页源代码,没办法处理分页的内容,所以这次换了种方式,就是利用Chrome浏览器工具抓取javacript文件get的网址,直接从源头入手。

1.打开谷歌开发工具 F12



步骤:点击Network --  XHR(也有可能在JS,多尝试几遍) -- 接着点击clear 清空一下,按F5,接着点击页面中的 即可看到加载的javascript文件


点开看看:

匹配下信息了,说明我们找对了文件。接着我们只要打开文件看看里面的内容有什么规律即可。

2.分析网址网页信息




https://movie.douban.com/j/search_subjects?type=movie&tag=%E7%83%AD%E9%97%A8&sort=recommend&page_limit=20&page_start=20


我们注意到里面的两个参数  page_limit   和   page_start  ,我们尝试改变这两个参数看看有没有变化,结果发现page_limit表示一页中能显示多少个目标值,page_start表示从哪一个目标开始显示。
因此我们只要取一个足够大的值,让page_start从0开始便可以爬取所有豆瓣电影的链接。


3.实现代码

import sys
import requests
import json
from bs4 import BeautifulSoup
import re
import pandas


因为链接存在subjects里面的url,因此我们要先去掉外面的subjects
json.loads(res.text)['subjects']
#获取子链接
def getSonurl(url):
    res = requests.get(url)
    content = json.loads(res.text)['subjects']
    sonurl = []
    for i in content:  #获取链接
        sonurl.append(i['url'])
    return sonurl

接着我们便能进入网址解析我们要内容了。

sonurl = getSonurl(url)  #获取子链接
for i in sonurl:
    print sonurl




就这样结束了,成功解决分页的困难,当然各种各样的网站的网站解析可能不太一样,但抓取javascript文件一样的道理。

















评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

感冒灵pp

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值