问题标签 [swiftsoup]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
357 浏览

swift - 如何
在 SwiftSoup 中使用换行符更改标签?

我正在尝试使用 SwiftSoup 获得一个段落,html 有
代码。当我解析它时,它只是获取没有换行符的文本。如何更改
带有换行符的标签?

上面的代码只是打印“Parsed HTML into a doc”。没有换行。

0 投票
0 回答
252 浏览

html - 替换 HTML 标记中的文本,HTML 属性中除外(正则表达式)

我正在尝试在 HTML 字符串中查找一些文本正则表达式匹配项,并将其替换为特殊标记。在下面的示例字符串中,我想找到单词swiftsoup,并将其替换为<b>swiftsoup</b>,但排除所有属性中的所有匹配项,如urlid="swiftsoup"hrefurl。

下面的 SwiftSoup 代码当然不起作用,因为ownText()totext()不是一个变异函数,不能处理未使用的结果replacingOccurrences(of:with:)

也许正则表达式html()可能会有所帮助,但我不知道如何在属性值中保留匹配项:

我试图得到的结果是:

提前致谢!

0 投票
1 回答
1333 浏览

javascript - 如何使用 SwiftSoup 抓取重定向的特定网站?

我正在尝试使用 SwiftSoup 让 Swift 抓取网站。但是,像https://apple.news/AQZXxg8mUQfKrEaM9MRBpxw这样的网站,它使用 JavaScript 自动重定向,这会导致 SwiftSoup 抓取打开页面而不是我想要的实际文章。我应该如何抓取此链接,以便它抓取有问题的实际文章,而不是重定向的封面网页?

我尝试使用状态码,但这个特定网站没有给出 301 或 302 的状态码,而是给出了 200 的状态码。我尝试抓取链接 HTML 的 JavaScript 部分,但我不完全知道是什么与它有关。

0 投票
1 回答
127 浏览

python - 如何在 Swift 中获取 API 访问权限?

我在 python 中创建了一个程序,我从“wind”网站上抓取了一个值。一切正常,但我想尝试在 Swift 中构建相同的应用程序,但是当我尝试运行程序时,它给出了这个错误:“未经授权的 API 访问!”

但是用 python 抓取效果很好......也许是因为 python 使用了 json?有人可以帮我找出我的 Swift 代码中的错误吗?

这是我的 python 工作代码:

输出是风。

这是我的快速代码:

这会导致 API 访问错误。

0 投票
1 回答
166 浏览

ios - 如何快速过滤字符串并获得中间结果

我正在尝试进行网络抓取,因为该网站的作者没有提供 API,但他希望我为该网站做一个应用程序。该网站是关于获取当天的时间表。所以我得到的打印值是这些。

1: 模块 Kevin Street 1: modulesTime line-height: 13px; 字体大小:11px;顶部:0px;高度:200px;显示:块;宽度:25%;左:0%;右:0px;

我想得到'top:'和'px;'之间的值 所以这意味着我正在寻找字符串中间的 0 值。对于我试图将 200 的值保存在变量中的高度也是如此。

这是我拥有的代码,用于获取标题的模块和作为元素样式的 moduleTime。

0 投票
1 回答
113 浏览

swiftsoup - 从 Web 检索的 HTML 中解析表格数据

现在,在我的代码中,我从一个显示球员名单的棒球网站检索了 HTML。HTML 中有多个表格,我只想要下面发布的表格中的数据。我不确定如何仅从 HTML 中解析该表。

我成功检索了所有 div 元素并使用 getElementsByID 试图检索我想要的表,但它打印所有 nil。谢谢你的帮助。

0 投票
1 回答
43 浏览

swift - 无法在 SWIFT 中正确使用 try doc.getElementsByClass("h4 font-weight-bold mb-0 ")

给定课程,我需要刮掉第三个 html div。我有这段代码可以抓取第一个元素,但我不知道如何只抓取第三个元素

我正在寻找相当于

这显然是行不通的。

0 投票
1 回答
936 浏览

html - 使用 Swift Soup 从任何网站获取产品价格

在我的应用程序中,我想获取任何产品的价格(用户输入想要的 URL)。

我现在搜索了很多,我发现有几个Webscrapers,我想我SwiftSoup现在会使用。但是,我找不到一个教程来教如何scrape使用 "dynamic" 获取元素tags。例如,price网站上的产品对于每个网站看起来都不同:

示例 1:

示例 2:

示例 3:

我知道我可以scrape这样的元素:

但是scrape动态的最好方法是什么?在这方面找不到任何东西,所以我很高兴得到每一个帮助:)

更新

如果我知道确切的“类名”,我设法得到了正确的“价格”:

但是,我想完成这项工作,以便上述所有 3 个示例都有效。现在我正在努力获得包含所有三个示例的正确“正则表达式”......有人知道吗?

0 投票
1 回答
465 浏览

ios - 使用 JSOUP 查找 HTML 类的正则表达式

对于我的项目,我需要解析HTML并获取产品的价格。这就是我目前的做法:

问题:

如何更改classNameregex以下所有 3 个示例都匹配?我现在尝试了几种可能性,但无法使其发挥作用。每次帮助都很高兴!

示例 1:

示例 2:

示例 3:

0 投票
1 回答
485 浏览

html - Swiftsoup 解析未找到所有 HTML 类

我有一种使用Swiftsoupgo get the price 解析网站的方法:

该方法可以正常工作,urlurl2即使classNames它们与regex. 实际价格是这样的:

函数的输出是这样的:

产品价格价格文本:

股票价格重试oos

pricetext:股票价格重试

价格文本:

它不是打印class=current-price的。我的有问题regex还是为什么找不到class

编辑:

我发现 theprice实际上不在HTMLof 中url2。只有classes实际打印出来的才在里面。这是什么原因,我该如何解决?