关于B站评论区图片的保存方法

  之前刷视频看见很多人在评论区求图

1348505d041e43149303ca6642cc9f7a.jpg

这是我之前给人发的动态,但是有的人懒得发动态或者没有回复消息,我们很想要这个图片,怎么办呢?

首先你需要一个可以使用桌面端网站的手机浏览器,如edge,夸克,手机自带的浏览器,登录网页版B站,在历史记录找到刚看的视频。

在评论区找到图片,打开图片长按保存为webp格式到本地,然后再使用webp转其他图片格式的网站转换下载保存即可。

详情参见我的视频

【不求人,B站评论区的图片怎么保存到手机里?-哔哩哔哩

使用 Appium 爬取 B 保存图片,需要以下步骤: 1. 启动 Appium 会话,并打开 B App。 ```python from appium import webdriver desired_caps = { 'platformName': 'Android', 'deviceName': 'your_device_name', 'appPackage': 'tv.danmaku.bili', 'appActivity': 'tv.danmaku.bili.ui.splash.SplashActivity', 'noReset': True } driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps) ``` 这里将 B App 的包名和启动 Activity 名称作为应用程序的信息传递给 Appium,以启动应用程序。 2. 进入 B App 的某个页面,例如搜索页面。 ```python search_button = driver.find_element_by_id('tv.danmaku.bili:id/home_search') search_button.click() ``` 在这个例子中,我们通过元素的 ID 查找搜索按钮,并模拟用户点击该按钮。 3. 在搜索框中输入关键字,并点击搜索按钮。 ```python search_input = driver.find_element_by_id('tv.danmaku.bili:id/search_src_text') search_input.send_keys('图片') search_button = driver.find_element_by_id('tv.danmaku.bili:id/search_btn') search_button.click() ``` 这里我们通过元素的 ID 查找搜索框和搜索按钮,并分别输入关键字和点击搜索按钮。 4. 在搜索结果页面中查找图片元素,并获取图片链接。 ```python import re pattern = re.compile(r'https://i[0-9].hdslb.com/bfs/article/(.*)\.(jpg|png|gif)') elements = driver.find_elements_by_xpath('//img[@class="lazy-img"]') for element in elements: src = element.get_attribute('src') match = pattern.search(src) if match: image_url = match.group(0) # TODO: 下载图片保存 ``` 在这里,我们使用正则表达式模式来匹配图片链接。然后,我们使用 `find_elements_by_xpath` 方法查找所有图片元素,并遍历它们以获取图片链接。 5. 下载图片保存到本地。 ```python import requests response = requests.get(image_url) with open('image.jpg', 'wb') as f: f.write(response.content) ``` 这里我们使用 `requests` 库来下载图片,并将其保存到本地。 完整的代码示例: ```python from appium import webdriver import re import requests desired_caps = { 'platformName': 'Android', 'deviceName': 'your_device_name', 'appPackage': 'tv.danmaku.bili', 'appActivity': 'tv.danmaku.bili.ui.splash.SplashActivity', 'noReset': True } driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps) search_button = driver.find_element_by_id('tv.danmaku.bili:id/home_search') search_button.click() search_input = driver.find_element_by_id('tv.danmaku.bili:id/search_src_text') search_input.send_keys('图片') search_button = driver.find_element_by_id('tv.danmaku.bili:id/search_btn') search_button.click() pattern = re.compile(r'https://i[0-9].hdslb.com/bfs/article/(.*)\.(jpg|png|gif)') elements = driver.find_elements_by_xpath('//img[@class="lazy-img"]') for element in elements: src = element.get_attribute('src') match = pattern.search(src) if match: image_url = match.group(0) response = requests.get(image_url) with open('image.jpg', 'wb') as f: f.write(response.content) driver.quit() ``` 请注意,此代码示例仅供学习和参考目的。在使用 Appium 爬取 B 时,请遵守相关法律法规和网使用条款。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值