python 如何實現PHP替換圖片 鏈接
問題描述
def replace_real_url(html, curr_url): ''' 將 html 中的相對路徑替換為 絕對路徑 :param html: :param curr_url: :return: ''' if html and curr_url:pattern = ur’<([a-z]{1,5})[^><]*(href|src)=['’]{0,1}([^'’]+)['’]{0,1}[^><]*>’html = re.sub(pattern, lambda x: replace_real_url_callback(x, curr_url), unicode(html), re.I | re.M) return html def replace_real_url_callback(repl, curr_url): ''' 執行替換 :param repl: :param curr_url: :return: ''' ret = repl.group() if repl and repl.lastindex == 3 and repl.group(1).lower() in [’a’, ’img’]:url = urljoin(curr_url, repl.group(3))ret = re.sub(ur’’ + re.escape(repl.group(3)), unicode(url), ret) return ret
如何修正這個替換的方法。
問題解答
回答1:print re.sub(’(<img src='http://www.aoyou183.cn/wenda/)(.+?)(' />)’, r’1aa3’, ’aa<img src='http://www.aoyou183.cn/aaa.jpg' />bb’)# aa<img src='http://www.aoyou183.cn/wenda/aa' />bb
相關文章:
1. javascript - vuejs 如何在單文件組件中使用混合2. python 計算兩個時間相差的分鐘數,超過一天時計算不對3. 一個走錯路的23歲傻小子的提問4. javascript - SuperSlide.js火狐不兼容怎么回事呢5. node.js - 函數getByName()中如何使得co執行完后才return6. android - 安卓activity無法填充屏幕7. python - django 里自定義的 login 方法,如何使用 login_required()8. java - 為什么hibernate查詢表集報錯?9. android spinner改變下拉彈出的位置10. java - 安卓電視盒子取得了root權限但是不能安裝第三方應用,請問該怎么辦?
