如何从一个 URL 字符串中提取出origin
时间: 2023-10-08 16:08:40 浏览: 297
要从一个URL字符串中提取出origin,可以使用JavaScript中的URL对象。这个对象提供了很多方法,可以让我们很方便地获取URL中的各个部分。
例如,如果我们有以下的URL字符串:
```
https://www.example.com/assets/styles.css?v=1234567890abcdef
```
我们可以使用URL对象来获取该URL的origin,代码如下:
```javascript
const url = new URL('https://www.example.com/assets/styles.css?v=1234567890abcdef');
const origin = url.origin;
console.log(origin); // 输出 https://www.example.com
```
以上代码中,我们首先创建了一个URL对象,然后调用其origin属性来获取URL的origin部分。该属性返回的是一个包含协议、主机和端口号的字符串,即 https://www.example.com。
需要注意的是,如果URL中省略了端口号,那么URL对象的origin属性会自动补充默认端口,例如HTTP协议的默认端口号是80,HTTPS协议的默认端口号是443。
相关问题
import requests from bs4 import BeautifulSoup import json url ="http://170.106.117.230/?url=steam://rungame/730/76561202255233023/+csgo_econ_action_preview%20M4339827378402747041A30648261933D3039437502918428834" headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36'} response = requests.get(url, headers=headers) print('状态码:', response.status_code) print('响应体:', response.text) soup = BeautifulSoup(response.text, 'html.parser') print(soup.prettify()) # 找到特定的标签或者CSS选择器 item_info = '{"iteminfo":{"origin":8,"quality":4,"rarity":5,"a":"30648261933","d":"3039437502918428834","paintseed":582,"defindex":32,"paintindex":1224,"stickers":[],"floatid":"30648261933","low_rank":125,"high_rank":134,"floatvalue":0.34608370065689087,"m":"4339827378402747041","s":"0","imageurl":"http://media.steampowered.com/apps/730/icons/econ/default_generated/weapon_hkp2000_cu_p2000_decline_light_large.7f57145674a5e41b3b8e7fe70be4ffbb57ec6f84.png","min":0,"max":1,"weapon_type":"P2000","item_name":"Wicked Sick","rarity_name":"Classified","quality_name":"Unique","origin_name":"Found in Crate","wear_name":"Field-Tested","full_item_name":"P2000 | Wicked Sick (Field-Tested)"}' # 将JSON字符串解析为字典 item_dict = json.loads(item_info) # 提取floatvalue的数值 floatvalue = item_dict['iteminfo']['floatvalue'] print(floatvalue) # 打印提取的数据 floatvalue_tag = soup.find('iteminfo') if floatvalue_tag: data = floatvalue_tag.text print(data) else: print('未找到 floatvalue 标签')
这段代码是用 Python 爬取 Steam 市场上某个商品的信息,并提取其中的 floatvalue 值。首先,使用 requests 库发送 GET 请求获取网页内容,然后用 BeautifulSoup 库解析网页内容,找到特定的标签或者 CSS 选择器,提取出需要的信息。接着,将 JSON 字符串解析为字典,再从字典中提取出 floatvalue 值,并打印出来。最后,使用 BeautifulSoup 找到包含 floatvalue 的标签,如果找到则打印出其中的文本,否则提示未找到。
js中获取上个页面的完整URL地址,包含域名、路由、参数
要获取上一个页面的完整 URL 地址,包括域名、路由和参数,可以使用 `document.referrer` 属性结合 `window.location` 对象来获取当前页面的完整 URL,并从中提取出域名部分。
以下是一个示例:
```javascript
var previousPageUrl = new URL(document.referrer);
var previousPageFullUrl = previousPageUrl.origin + previousPageUrl.pathname + previousPageUrl.search;
console.log(previousPageFullUrl);
```
首先,使用 `document.referrer` 获取上一个页面的 URL。然后,使用 `new URL()` 构造函数将其转换为 URL 对象。接下来,通过访问 URL 对象的 `origin`、`pathname` 和 `search` 属性,将域名、路由和参数拼接成完整的 URL 地址。最后,将其打印到控制台。
请注意,`document.referrer` 仅在当前页面通过链接或重定向跳转时才包含引荐信息。如果前一个页面没有提供引荐信息或直接通过 URL 访问当前页面,则 `document.referrer` 可能为空字符串。在使用之前最好做一些验证。
阅读全文