import com.shua.web.webfull.mapper.WebFullMapper; import org.openqa.selenium.By; import org.openqa.selenium.WebElement; import org.openqa.selenium.chrome.ChromeDriver; import org.openqa.selenium.chrome.ChromeOptions; import org.openqa.selenium.support.ui.ExpectedConditions; import org.openqa.selenium.support.ui.WebDriverWait; import org.springframework.beans.factory.annotation.Autowired; import java.util.List; /** * 爬58同城公司 */ class test4 { @Autowired private WebFullMapper webFullMapper; public static void main(String[] args) throws Exception { System.setProperty("webdriver.chrome.driver", "D:\\chromedriver.exe"); ChromeOptions option = new ChromeOptions(); // option.addArguments("--proxy-server=http://" + "58.54.8.50:8888"); option.addArguments("user-agent=" + "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:103.0) Gecko/20100101 Firefox/103.0"); ChromeDriver driver = new ChromeDriver(option); String url = "https://sy.58.com/job/?final=1&jump=1"; driver.get(url); Thread.sleep(10000); driver.findElement(By.id("keyword")).clear(); driver.findElement(By.id("keyword")).sendKeys("电话销售"); driver.findElement(By.id("searchbtn")).click(); Thread.sleep(5000); // Thread.sleep(1000); for (int i = 0; i < 999999; i++) { new WebDriverWait(driver, 120).until(ExpectedConditions.elementToBeClickable(By.cssSelector(".comp_name"))); List<WebElement> lst = driver.findElements(By.cssSelector(".comp_name")); for (int j = 1; j < lst.size(); j++) { String restr = lst.get(j).getText().replaceAll("\\d+年", "").replaceAll("…", ""); System.out.println(restr); } new WebDriverWait(driver, 120).until(ExpectedConditions.elementToBeClickable(By.cssSelector(".next"))).click(); System.out.println(driver.getCurrentUrl() + "===================================="); // Thread.sleep(10000); } // Thread.sleep(20000); } } /** * 根据58查询的公司查询公司信息 */ class test5 { public static void main(String[] args) throws Exception { System.setProperty("webdriver.chrome.driver", "D:\\chromedriver.exe"); ChromeOptions option = new ChromeOptions(); // option.addArguments("--proxy-server=http://" + "58.54.8.50:8888"); option.addArguments("user-agent=" + "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:103.0) Gecko/20100101 Firefox/103.0"); ChromeDriver driver = new ChromeDriver(option); String url = "https://www.qcc.com/"; driver.get(url); Thread.sleep(20000); for (int i = 1; i < 999; i++) { driver.findElement(By.id("searchKey")).clear(); driver.findElement(By.id("searchKey")).sendKeys("一诺快记(辽宁)企业管理集团"); driver.findElement(By.cssSelector(".input-group-btn")).click(); List<WebElement> lst = driver.findElements(By.cssSelector(".relate-info")); for (WebElement s : lst) { System.out.println(s.findElements(By.cssSelector(".rline.over-rline")).get(0).getText()); System.out.println(s.findElements(By.cssSelector(".rline.over-rline")).get(1).getText()); System.out.println("=========================" + i + "====================================="); } driver.get(url); } // Thread.sleep(1000); // Thread.sleep(20000); } }
企查查有反扒措施,超频会拦截,需要接入第三方打码平台进行识别破解