请问用python爬虫抓取此网站的有关信息正则表达式和beautifulsoup怎么写? 5
网址http://bbs.tiexue.net/post_4337054_1.html抓取此页面上的位置名称,经纬度,别的不要pattern=re.compile(***...
网址http://bbs.tiexue.net/post_4337054_1.html
抓取此页面上的位置名称,经纬度,别的不要
pattern=re.compile(********,reS) 展开
抓取此页面上的位置名称,经纬度,别的不要
pattern=re.compile(********,reS) 展开
展开全部
代码如下:
#coding=utf-8
import re
import requests
from bs4 import BeautifulSoup
resp = requests.get('http://bbs.tiexue.net/post_4337054_1.html')
if resp.status_code == 200:
soup = BeautifulSoup(resp.content.decode('GB2312'), 'xml')
content = soup.find('div', id = 'postContent')
items = content.find_all('p', attrs = {'class': 'bbsp'})
regex = re.compile(r'\d*(.*?)\s*((?:\d+°\s?)?(?:\d+\'\s?)?(?:\d+\.\d+\"\s?)?N)\s*((?:\d+°\s?)?(?:\d+\'\s?)?(?:\d+\.\d+\"\s?)?[WE])')
for item in items:
line = item.text.strip()
if line != '':
match = regex.match(line)
if match:
groups = match.groups()
print('名称:', groups[0])
print('北纬:', groups[1])
print('东经:', groups[2])
print('----------------------------------------')
运行结果:
展开全部
import requests as rs
from bs4 import BeautifulSoup as BS
url = 'http://bbs.tiexue.net/post_4337054_1.html'
res = rs.get(url)
soup = BS(res.content.decode('gb2312'), 'lxml')
for tag in soup.select('.bbsp'):
text = tag.text
if not text:
continue
else:
if not text[0].isdigit():
continue
print(text)
结果如下
后面太长,没有都截屏,你看着就行。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以用这个正则表达工工具测试一下:网页链接
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询