有关Python爬虫的问题

在运行完之后,结果csv遇到篡位的问题,和无法获取多个页面的数据 。

示例入下

import time
from selenium import webdriver
from pyquery import PyQuery as pq
import csv
URL = "https://bj.ke.com/ershoufang/pg"
bw = webdriver.Chrome()
alldata=[['标题', '价格', '平米价格', '楼层', '修建时间', '户型', '面积', '朝向']]
for page in range(3):
    new_url = URL + str(page)
    # 打开页面
    bw.get(new_url)
    html = bw.page_source
    doc = pq(html)
    time.sleep(2)
    for item in doc('.info.clear').items():
        pdoc =pq('<div>'+item.html()+'</div>')
        title=list(pdoc('.maidian-detail').items())[0].text()
        prize=list(pdoc('.totalPrice.totalPrice2').items())[0].text()
        avgprize=list(pdoc('.unitPrice').items())[0].text()
        address=list(pdoc('.positionInfo').items())[0].text()
        data = list(pdoc('.houseInfo').items())[0].text().split('|')
        if '建' not in data[1]:#没有修建时间,补充
            data.insert(1,'')
        if '室' not in data[2]:#没有户型,补充
            data.insert(2,'')
        if (len(data) == 4):
                data.append('')
        data.insert(0, title)#title已经是标题内容,不需要调用.text(),要不会出错,下面的价格同理
        data.insert(1, prize)#
        data.insert(2, avgprize)
        alldata.append(data)

#最后再一起写csv,而不是for循环中打开文件写,会覆盖内容

with open('bj.ke.com.csv','w',newline='')as f:
    writer = csv.writer(f)
    for data in alldata:
        writer.writerow(data)
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632