python爬虫小问题
大佬们爬虫爬到这种数据如何筛选不必要的信息啊,比如前面那个/ur如何去掉?上图是抓取简洁页面的爬虫,直接定位所以比较简单。
如果要抓取一个房屋页面的详细信息然后获取下一个物品的url进行抓取需要改进什么呢?求大佬指教{:301_975:} 我一般用正则表达式去除字符串中不需要的内容~ xpath筛选内容灰常好用然后用古老的方法split法 简单除暴不饶脑 你这个是因为中文被转义了,我建议先把这个网页的格式格式化一下 本帖最后由 ZY.Zhang 于 2021-5-15 11:46 编辑
import requests
from lxml import etree
if __name__ == '__main__':
headers = {
'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.121 Safari/537.36'
}
url = 'https://cs.zu.fang.com/'
page_text = requests.get(url = url,headers = headers).text
tree = etree.HTML(page_text)
dl_list = tree.xpath('//*[@id="listBox"]/div/dl')
fp = open('ershoufang.txt','w',encoding = 'utf-8')
for dl in dl_list:
title = dl.xpath('./dd/p/a/text()')
fp.write(title + '\n\n')
print('---------------Over!------------------')
继续想获取每个房源的具体信息的话,直接取a标签的href属性,前边补充链接即可 这是被转义了
可以解码
str.decode("unicode_escape") 就行了
如果是 \x 这种,一般为 UTF-8
具体看看什么编码
a8730151a 发表于 2021-5-15 11:26
我一般用正则表达式去除字符串中不需要的内容~
试过了,然而beautiful的类型是bs4.element.ResultSet不是字符串,就不知道如何匹配了{:301_1005:} pangpang02 发表于 2021-5-15 11:30
你这个是因为中文被转义了,我建议先把这个网页的格式格式化一下
beautifulsoup好像就是把网站转义(似乎) ZY.Zhang 发表于 2021-5-15 11:40
import requests
from lxml import etree
emmm,报错了,是哪里出问题了吗 城南彼岸花复开 发表于 2021-5-15 22:24
emmm,报错了,是哪里出问题了吗
我这边没问题,你复制代码是不是出现问题了
页:
[1]
2