试了用requests来爬取58,效果不是很好,因为每一个链接地址点击之后,都会生成很多参数,如果不加的话,很快就会跳验证码,所以使用了selenium进行模拟点击,不去管这些参数怎么生成了,实测采集整个城市的信息都很流畅。
话不多说,先记录下代码:
from selenium import webdriver
import time,re,csv
from bs4 import BeautifulSoup
f = open('test1.csv','a',newline='')
w = csv.writer(f)
driver = webdriver.Firefox()
def get_info():
links = driver.find_elements_by_xpath('//h2[@class="title"]/a')
chandle = driver.current_window_handle
for i in links:
i.click()
time.