Python网络数据采集

1、正则表达式html

 *     表匹配0次或者屡次  a*b*正则表达式

+    表至少一次dom

[ ]   匹配任意一个函数

( )  辨识一个编组url

{m,n} m或者n 次htm

[^]  匹配任意不在中括号里的字符图片

|    表示或者ip

.    表示匹配任意字符资源

^    表字符的开始 ^a  表示以a开始字符串

\    表示转义字符

$  和^ 相反  从字符串的末尾开始匹配

?! 不包含

2、得到属性

得到一个标签的所有属性

myTag.attrs

获取图片的资源位置src

myImgTag.attrs["src"]

 

 

获取网页的函数:

random.seed(datetime.datetime.now())def getLinks(articleUrl): html = urlopen("http://en.wikipedia.org"+articleUrl) bs0bj = BeautifulSoup(html) return bs0bj.find("div",{"id":"bodyContent"}).findAll("a",herf=re.compile("^(/wiki/)((?!:).)*$"))links = getLinks("/wiki/Kevin_Bacon")while len(links) > 0: newArticle = links[random.randint(0,len(links)-1)].attrs["href"] print(newArticle) link = getLinks(newArticle)

相关文章
相关标签/搜索