
python 的特殊反斜杠问题解析
在编写 python 代码时,您可能会遇到反斜杠()处理上的奇怪现象。本文将解释这种现象并提供解决方案。
完整代码如下:
from csv import dictwriter, writer
import time
options = webdriver.chromeoptions()
options.add_experimental_option("excludeswitches", ['enable-automation', 'enable-logging'])
browser = webdriver.chrome(options=options)
def write_csv(url='http://www.alaibao.cn/productdetail-83.html'):
browser.get(url)
slider_images = browser.find_elements_by_css_selector('#j_ulthumb li:not(#j_videothumb)')
slider_image = []
image = ''
for v in slider_images:
img = v.find_element_by_css_selector('.tb-pic img')
slider_image.append(img.get_attribute('bimg').replace('/', r'/'))
image = slider_image[0].replace(r'/', '/')
with open('product.csv', 'a', newline='') as f:
csv_writer = dictwriter(f, fieldnames=['store_name', 'store_info', 'price', 'cost', 'image', 'recommend_image', 'slider_image'])
csv_writer.writeheader()
csv_writer.writerow({'store_name': 'store', 'store_info': 'info', 'price': '10.9', 'cost': '5.5', 'image': image, 'recommend_image': image, 'slider_image': slider_image})
write_csv()问题:
立即学习“Python免费学习笔记(深入)”;
代码生成的图像路径类似于 http://img1.zabao.cn/pimages,而不是预期的 http://img1.zabao.cn/pimages。
解决:
出现这种问题是因为 replace('/', '/') 的用法不正确。在 python 中,反斜杠用于转义特殊字符,因此为了转义反斜杠自身,需要使用原始字符串,即 r'/' 或者 '/'。
修改后的代码如下:
slider_images = browser.find_elements_by_css_selector('#J_UlThumb li:not(#J_VideoThumb)')
slider_image = []
image = ''
for v in slider_images:
img = v.find_element_by_css_selector('.tb-pic img')
slider_image.append(img.get_attribute('bimg').replace('/', r'/'))
image = slider_image[0].replace(r'/', '/')以上就是## Python 中的反斜杠:为什么我的图像路径变成了 http:\\/\\/img1.zabao.cn\\/pimages?的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号