|
发表于 2019-9-20 14:32:03
|
显示全部楼层
本帖最后由 yuweb 于 2019-9-21 08:40 编辑
findall
在字符串中找到正则表达式所匹配的所有子串,并返回一个列表,如果没有找到匹配的,则返回空列表。
语法格式为:
findall(string[, pos[, endpos]])
参数:
string : 待匹配的字符串。
pos : 可选参数,指定字符串的起始位置,默认为 0。
endpos : 可选参数,指定字符串的结束位置,默认为字符串的长度。
open_url(url)里返回的html有问题
import re
import os
import requests
import bs4
def open_url(url):
headers = {"User-Agent":"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36"}
html = requests.get(url,headers = headers)
return html
def get_img(html):
file_name = 'image2.html'
with open(file_name,'w',encoding='utf-8') as file_obj:
file_obj.write(html.text)
soup = bs4.BeautifulSoup(html.text,"lxml")
content = soup.select("img.BDE_Image")
print(content)
'''
print("一共有")
print(len(imglist))
for each in imglist:
print(each)
print("yes!")
for each in imglist:
filename = each.split("/")[-1]
urllib.request.urlretrieve(each,filename,None)
'''
if __name__=='__main__':
url='https://tieba.baidu.com/p/6216578674'
get_img(open_url(url))
|
|