[英]How can I convert an unstructured string to a dataframe?
我有一个长字符串文本,我想将其转换为 dataframe 进行分析。 请参阅下面的数据示例。 我希望这些列是“设施”、“街道”、“城市”、“电话”和“商店营业时间”。
string = AlaskaUSCG Base Ketchikan 1300 Stedman Street Ketchikan, AK (907) 228-0250 Mon-Fri 7:30am-5pm | Sat 10am-4pm | Closed Sunday USCG Base Kodiak Albatros Avenue, Building 26 (2nd Floor) Kodiak, AK (907) 487-5773 USCG Base Kodiak Albatros Avenue, Building 26 (1st Floor) Kodiak, AK (907) 487-5773 Mon-Fri: 7am-9pm | Sat: 9am-9pm |
我使用 StringIO 将其转换为 dataframe 但它将其转换为具有 0 行和 1000 列的 dataframe。 相反,我想要我上面提到的列和每个商店的行。
我希望它看起来像这样,数据填充为行:
Facility Street City Phone
Alaska USCG Base Ketchikan 1300 Stedman Street Ketchikan, AK (907) 228 0250
您可以使用简单的网络抓取技术,例如bs4
和requests
。
import bs4
r = requests.get(URL)
b = bs4.BeautifulSoup(r.text)
addresses = []
for val in b.find_all(name='p'):
s = list(val.stripped_strings)
if s and not s[0].startswith('HOURS'): addresses.append(' '.join(s[:-1]))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.