Loading [MathJax]/jax/input/TeX/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >用Javascript元素抓取网页

用Javascript元素抓取网页
EN

Stack Overflow用户
提问于 2020-07-07 18:14:07
回答 1查看 53关注 0票数 0

所以为了给我的网站做前言,我似乎使用了javascript代码(关于web开发之类的术语我不太确定),并且我在不同的页面上尝试抓取不同的表格也取得了不同的成功。

例如,在这个页面上:http://www.tennisabstract.com/cgi-bin/player.cgi?p=NovakDjokovic,我可以轻松地“检查元素”,然后转到Network,找到脚本的正确“名称”,然后找到获取我想要的表所需的请求URL。我使用的代码是:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
url = 'http://www.minorleaguesplits.com/tennisabstract/cgi-bin/frags/NovakDjokovic.js'
content = requests.get(url)
soup = BeautifulSoup(content.text, 'html.parser')

table = soup.find('table', id='tour-years', attrs= {'class':'tablesorter'})
dfs = pd.read_html(str(table)) 
df = pd.concat(dfs)

但是,现在当我在同一站点上查看不同的页面时,比如这个http://www.tennisabstract.com/charting/20190714-M-Wimbledon-F-Roger_Federer-Novak_Djokovic.html,我无法找到最终允许我获得我想要的表的请求URL。我重复了与上面相同的过程,但是在Network选项卡下没有包含该表的.js脚本。当我查看html元素时,我确实看到了这个表,但当然,如果没有正确的url,我就无法获得它。

所以我的问题是,如何从这个页面http://www.tennisabstract.com/charting/20190714-M-Wimbledon-F-Roger_Federer-Novak_Djokovic.html中获取表格?

蒂娅!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-07-07 18:42:19

在查看html页面的源代码时,您可以看到所有数据都已加载到script标记中。你唯一想要的就是提取变量值并将其加载到漂亮汤中。

下面的代码给出了脚本标记中的所有变量和值

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import requests, re
from bs4 import BeautifulSoup

res = requests.get("http://www.tennisabstract.com/charting/20190714-M-Wimbledon-F-Roger_Federer-Novak_Djokovic.html")
soup = BeautifulSoup(res.text, "lxml")
script = soup.find("script", attrs={"language":"JavaScript"}).text

var_only = script[:script.index("$(document)")].strip()

接下来,您可以使用正则表达式获取变量值- https://regex101.com/r/7cE85A/1

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62781495

复制
相关文章
Python之抓取网页元素
import urllib.request from bs4 import BeautifulSoup url = "http://www.wal-martchina.com/walmart/store/14_hubei.htm" user_agent = "Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.134 Safari/537.36" request = u
py3study
2020/01/09
2.7K0
合规应用网页抓取之网页抓取流程/用例讲解
网页抓取(Web Scraping)又称网页收集,或者网页数据提取,是指从目标网站收集公开可用数据的自动化过程,而非手动采集数据,需要使用网页抓取工具自动采集大量信息,这样可以大大加快采集流程。
用户7850017
2022/10/18
1.5K0
合规应用网页抓取之网页抓取流程/用例讲解
初学指南| 用Python进行网页抓取
编译|丁雪 黄念 程序注释|席雄芬 校对|姚佳灵 引言 从网页中提取信息的需求日益剧增,其重要性也越来越明显。每隔几周,我自己就想要到网页上提取一些信息。比如上周我们考虑建立一个有关各种数据科学在线课程的欢迎程度和意见的索引。我们不仅需要找出新的课程,还要抓取对课程的评论,对它们进行总结后建立一些衡量指标。这是一个问题或产品,其功效更多地取决于网页抓取和信息提取(数据集)的技术,而非以往我们使用的数据汇总技术。 网页信息提取的方式 从网页中提取信息有一些方法。使用API可能被认为是从网站提取信息的最佳方法。
大数据文摘
2018/05/21
3.3K0
初学指南| 用Python进行网页抓取
引言 从网页中提取信息的需求日益剧增,其重要性也越来越明显。每隔几周,我自己就想要到网页上提取一些信息。比如上周我们考虑建立一个有关各种数据科学在线课程的欢迎程度和意见的索引。我们不仅需要找出新的课程,还要抓取对课程的评论,对它们进行总结后建立一些衡量指标。这是一个问题或产品,其功效更多地取决于网页抓取和信息提取(数据集)的技术,而非以往我们使用的数据汇总技术。 网页信息提取的方式 从网页中提取信息有一些方法。使用API可能被认为是从网站提取信息的最佳方法。几乎所有的大型网站,像Twitter、Facebo
CDA数据分析师
2018/02/05
3.7K0
初学指南| 用Python进行网页抓取
网页抓取
之前做聊天室时,由于在聊天室中提供了新闻阅读的功能,写了一个从网页中抓取信息(如最新的头条新闻,新闻的来源,标题,内容等)的类,本文将介绍如何使用这个类来抓取网页中需要的信息。 上图显示的是博客园首页
猿人谷
2018/01/17
2.3K0
网页抓取
网页抓取类
// --需要引用 using System.Net 以及 using System.IO; private string  GetContentFromUrll( string  _requestUrl)         { string  _StrResponse  = "" ;             HttpWebRequest _WebRequest  =  ( HttpWebRequest )WebRequest.Create( _requestUrl );             _WebRequest.Method  = " GET " ;             WebResponse _WebResponse  =  _WebRequest.GetResponse();             StreamReader _ResponseStream  = new  StreamReader( _WebResponse.GetResponseStream(), System.Text.Encoding.GetEncoding( " gb2312 " ));             _StrResponse  =  _ResponseStream.ReadToEnd();             _WebResponse.Close();              _ResponseStream.Close(); return  _StrResponse;                 }
Java架构师必看
2021/03/22
9470
用Javascript获取页面元素的位置
制作网页的过程中,你有时候需要知道某个元素在网页上的确切位置。 下面的教程总结了Javascript在网页定位方面的相关知识。 一、网页的大小和浏览器窗口的大小 首先,要明确两个基本概念。 一张网页的全部面积,就是它的大小。通常情况下,网页的大小由内容和CSS样式表决定。 浏览器窗口的大小,则是指在浏览器窗口中看到的那部分网页面积,又叫做viewport(视口)。 很显然,如果网页的内容能够在浏览器窗口中全部显示(也就是不出现滚动条),那么网页的大小和浏览器窗口的大小是相等的。如果不能全部显示,则滚动浏览器
ruanyf
2018/04/12
3.3K0
Python抓取网页内容
import urllib.request response=urllib.request.urlopen("http://www.baidu.com") print(response.read())
py3study
2020/01/06
3.5K0
lxml网页抓取教程
在本教程中,我们会学习lxml库和创建XML文档的基础知识,然后会处理XML和HTML文档。最后,我们将利用以上所学,融会贯通,看看如何使用lxml提取数据。本教程的每一步都配有实用的Python lxml示例。
用户7850017
2021/10/15
4K0
lxml网页抓取教程
网页抓取 - 完整指南
Web Scraping,也称为数据提取或数据抓取,是从网站或其他来源以文本、图像、视频、链接等形式提取或收集数据的过程。
海拥
2023/02/26
3.6K0
网页抓取 - 完整指南
phpCURL抓取网页内容
如果你模拟登录失败了,那么很可能你要登录的网站有反爬虫机制,比如验证码,比如token,比如用的Ajax同时又不允许跨域
超级小可爱
2023/02/20
1.3K0
Python抓取网页图片
网上的代码基本上都是python2,这里的代码使用的是python3注意没有urllib2这个库了。
里克贝斯
2021/05/21
4.3K0
Python抓取网页图片
Python抓取中文网页
早就有想法把博客每天的访问流量记下来,刚好现在申请了GAE的应用,又开始学Python,正好拿这个练手。打算先利用Python把访问记录保存在本地,熟悉之后可以部署到GAE,利用GAE提供的cron就可以每天更近访问流量了。OK,开始~   首先是简单的网页抓取程序:   [python] view plaincopy import sys, urllib2   req = urllib2.Request("http://blog.csdn.net/nevasun")   fd = urllib2.urlo
猿人谷
2018/01/17
2.4K0
通过Url抓取网页内容
本文由来源 21aspnet,由 javajgs_com 整理编辑,其版权均为 21aspnet 所有,文章内容系作者个人观点,不代表 Java架构师必看 对观点赞同或支持。如需转载,请注明文章来源。
Java架构师必看
2021/03/22
1.7K0
Jsoup抓取网页数据
获取Session Connection.Response res = Jsoup.connect("http://www.example.com/login.php") .data("username", "myUsername", "password", "myPassword") .method(Method.POST) .execute(); Document doc = res.parse(); //这儿的SESSIONID需要根据要登录的目标网站设置的session Cookie名字而定 St
码客说
2019/10/21
4.1K0
利用python抓取网页图片
    近期在家想看华为官方的【IP,图话技术,微图】系列文档,奈何家里是长宽,基本打不开页面,刷新多次,心力憔悴。
py3study
2020/01/13
2K0
使用Java进行网页抓取
用于网页抓取的流行语言有Python、JavaScript和Node.js、PHP、Java、C#等。因为有很多选择,想要确定哪种语言最合适并不容易。每种语言都有其优点和缺点。在本文中,我们将使用Java进行网页抓取并使用 Java创建一个网页抓取工具。
用户7850017
2021/09/17
4.1K0
使用Java进行网页抓取
使用Python轻松抓取网页
抓取网页入门其实挺简单的。在之前的文章中我们介绍了怎么用C#和JAVA两种方法来抓取网页,这一期给大家介绍一种更容易,也是使用最广泛的一种抓取方法,那就是Python。
用户7850017
2021/09/24
14K0
使用Python轻松抓取网页
使用Pyppeteer抓取渲染网页
GitHub地址是:https://miyakogi.github.io/pyppeteer
SeanCheney
2019/01/28
6.7K0
使用Pyppeteer抓取渲染网页
用 Javascript 和 Node.js 爬取网页
本文主要针对具有一定 JavaScript 经验的程序员。如果你对 Web 抓取有深刻的了解,但对 JavaScript 并不熟悉,那么本文仍然能够对你有所帮助。
疯狂的技术宅
2020/06/28
10.2K1

相似问题

用Javascript抓取网页?

20

用Javascript抓取网页?

21

用javascript进行网页抓取

10

用javascript链接抓取网页

11

用phantomJS抓取javascript网页

10
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文