仓库 ให้เช่าโกดัง บิ๊กซี ลาดพร้าว2 1.5 กม. MRT รัชดาภิเษก 900 ม. แยก รัชดา-สุทธิสาร พร้อมออฟฟิศ 150 ตร.วา. 495 ตร.ม.

10900

更新于 2025年8月11日 18:31 (1 年前)

租金

65,999泰铢/月

房产详情

类型

490 平米

1 颜50 平方哇

停车位

1 车位

面向

0-200 米

物件编号

L2025081182

描述

#UPDATE NEW FORM UPDATE 17-7-2568 แก้เรื่องจุดทศนิยม ไร่ งาน ตารางวา

from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.chrome import options
import time
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.keys import Keys
from re import search
from selenium.webdriver.chrome.options import Options

idp = "prayat"
pwp = "prayat2521"
idl = "[email protected]"
pwl = "876678"

i_path = "C:\โปรแกรม Post-ASSET ห้ามลบ\images"

ownerurl = "https://www.post-estates.com"
kurl = "https://www.livinginsider.com/living_buysell.php"
loginurl = "/member_login.php"
ologinurl = ownerurl + loginurl

options = Options()
options.add_argument('--ignore-certificate-errors')
options.binary_location = "C:\Program Files (x86)\Google 109\Chrome\Application\chrome.exe"
driver = webdriver.Chrome(executable_path=r"C:\Driver\chromedriver.exe", options=options)

driver.maximize_window()
time.sleep(1)

try:
driver.get(ologinurl)
time.sleep(3)
driver.find_element_by_id("username_member_login").send_keys(' ')
driver.find_element_by_id("username_member_login").clear()
driver.find_element_by_id("password_member_login").send_keys(' ')
driver.find_element_by_id("password_member_login").clear()
driver.find_element_by_id("username_member_login").send_keys(idp)
driver.find_element_by_id("password_member_login").send_keys(pwp)
time.sleep(1)
driver.find_element_by_id("member__loginsubmit").click()
time.sleep(3)
except:
pass

try:
driver.get('https://www.livinginsider.com/')
time.sleep(1)
driver.find_element_by_xpath('//a[@data-type="login"]').click()
time.sleep(2)
driver.find_element_by_xpath('//input[@id="login_username"]').send_keys(idl)
time.sleep(1)
driver.find_element_by_xpath('//button[text()="ดำเนินการต่อ"]').click()
time.sleep(2)
driver.find_element_by_xpath('//input[@id="password"]').send_keys(pwl)
time.sleep(1)
driver.find_element_by_xpath('//button[text()="ดำเนินการต่อ"]').click()
time.sleep(10)
except:
pass

###ปิดโฆษณา

try:
time.sleep(2)
driver.find_element_by_xpath("(//label[text()='ไม่แสดงอีก']/preceding-sibling::input)[2]").click()
time.sleep(2)
except:
pass

try:
driver.find_element_by_xpath("(//label[text()='ไม่แสดงอีก']/preceding-sibling::input)[1]").click()
time.sleep(2)
except:
pass

try:
driver.find_element_by_xpath(
"(//div[@class='modal-content']/following::a[@type='button' and @class='close' and @aria-label='Close'])[1]").click()
time.sleep(2)
except:
pass

###ปิดโฆษณา

try:
driver.get(ownerurl + "/show_post2.php")
try:
max = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.ID, "count"))

)

# print(max.text)
finally:
pass
except:
pass

i = 1
x = range(int(max.text))
for n in x:
# print(n)

driver.get(ownerurl + "/show_post2.php")
time.sleep(1)
driver.find_element_by_id("show2" + str(n + 1)).click()

try:
productid = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.ID, "productid"))

)

code_asset = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.ID, "code_asset"))

)
want = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.ID, "want"))

)
typeasset = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.ID, "typeasset"))

)
l_title = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.ID, "l_title"))

)
s_title = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.ID, "s_title"))

)
price = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.ID, "price"))

)
body_txt = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.ID, "body_txt"))

)
PROVINCE_NAME = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.ID, "PROVINCE_NAME"))

)
AMPHUR_NAME = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.ID, "AMPHUR_NAME"))

)
DISTRICT_NAME = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.ID, "DISTRICT_NAME"))

)
road = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.ID, "road"))

)
soi = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.ID, "soi"))

)
near1 = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.ID, "near1"))

)
project_th = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.ID, "project_th"))

)
region = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.ID, "region"))

)
e_title = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.ID, "e_title"))

)
e_body = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.ID, "e_body"))

)
project_eng = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.ID, "project_eng"))

)
building = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.ID, "building"))

)
area_sqm = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.ID, "area_sqm"))

)
bedroom = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.ID, "bedroom"))

)
bahtroom = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.ID, "bahtroom"))

)
floor = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.ID, "floor"))

)
maxfloor = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.ID, "maxfloor"))

)
area_sqwa = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.ID, "area_sqwa"))

)
area_ngan = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.ID, "area_ngan"))

)
area_rai = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.ID, "area_rai"))

)
project_lvr = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.ID, "project_lvr"))

)

zone_real = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.ID, "zone_real"))

)

usefulspace = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.ID, "usefulspace"))

)
sum_sqwa = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.ID, "sum_sqwa"))

)



except:
pass

t1 = "คอนโด"
t2 = "บ้าน"
t3 = "ทาวน์เฮ้าส์"
t4 = "อาคารพาณิชย์"
t5 = "ที่ดิน"
t6 = "อพาร์ทเมนท์"
t7 = "โรงแรม"
t8 = "สำนักงาน"
t9 = "โรงงาน"
t10 = "โกดัง"
w1 = "ขาย"
w2 = "ให้เช่า"
w3 = "ขายดาวน์"
ttypeasset = typeasset.text
tproductid = productid.text
tcode_asset = code_asset.text
twant = want.text
tl_title = l_title.text
ts_title = s_title.text
tprice = price.text
tbody_txt = body_txt.text
tPROVINCE_NAME = PROVINCE_NAME.text
tAMPHUR_NAME = AMPHUR_NAME.text
tDISTRICT_NAME = DISTRICT_NAME.text
troad = road.text
tsoi = soi.text
tnear1 = near1.text
tproject_th = project_th.text
tregion = region.text
te_title = e_title.text
te_body = e_body.text
tproject_eng = project_eng.text
tbuilding = building.text
tarea_sqm = area_sqm.text
tbedroom = bedroom.text
tbahtroom = bahtroom.text
tfloor = floor.text
tmaxfloor = maxfloor.text
tarea_sqwa = area_sqwa.text
tarea_ngan = area_ngan.text
tarea_rai = area_rai.text
tusefulspace = usefulspace.text
tsum_sqwa = sum_sqwa.text
tproject_lvr = project_lvr.text
tzone_real = zone_real.text

if tproject_lvr == "#EANF#":
tproject_lvr = "ไม่ทราบ"
if area_rai == "0" and area_ngan == "0" and tarea_sqwa == "0":
area_sqwa = "1"
if tarea_sqm == "0":
tarea_sqm = "1"
if tusefulspace == "0":
tusefulspace = "1"

if tmaxfloor == "0":
tmaxfloor = "1"

if typeasset == "คอนโด":
tusefulspace = tarea_sqm
tarea_sqm = tarea_sqm + ".0"

#tsum_sqwa = tsum_sqwa + ".0"
#tarea_rai = tarea_rai + ".0"
#tarea_ngan = tarea_ngan + ".0"
#tarea_sqwa = tarea_sqwa + ".0"
#tusefulspace = tusefulspace + ".0"

tfloor = int(tfloor)
tbedroom = int(tbedroom)
tbahtroom = int(tbahtroom)
# print(type(tfloor))
# print(tarea_sqm)
# print(tusefulspace)
# print(ttypeasset)

# print(project_lvr.text)
# print(zone_real.text)

try:
driver.get('https://www.livinginsider.com/living_buysell.php')
time.sleep(10)
except:
pass

try:
driver.find_element_by_xpath('//a[text()="ปิดแถบนี้"]').click()
time.sleep(1)
except:
pass

try:
driver.find_element_by_xpath('(//span[text()="X"])[1]').click()
time.sleep(2)
except:
pass

try:
iframe = driver.find_element(By.XPATH, "//iframe[@title='Livinginsider']")
driver.switch_to.frame(iframe)
time.sleep(1)
except:
pass

try:
driver.find_element_by_xpath("//li[span[contains(., 'นายหน้า (Agent)')]]").click()
time.sleep(1)
except:
pass

driver.execute_script("window.scrollBy(0,300);void(0);")
time.sleep(2)

if twant == "ขาย":
try:
driver.find_element_by_xpath("//li[span[normalize-space(.) = 'ขาย']]").click()
time.sleep(1)
except:
pass
elif twant == "ให้เช่า":
try:
driver.find_element_by_xpath("//li[span[normalize-space(.) = 'เช่า']]").click()
time.sleep(1)
except:
pass
else:
try:
driver.find_element_by_xpath("//li[span[normalize-space(.) = 'ขายดาวน์']]").click()
time.sleep(1)
except:
pass

try:
if ttypeasset == "คอนโด" or ttypeasset == "บ้าน" or ttypeasset == "ทาวน์เฮ้าส์" or ttypeasset == "ที่ดิน":
# รอให้ element ปรากฏขึ้นในระยะเวลาหนึ่ง
element = WebDriverWait(driver, 10).until(
EC.presence_of_element_located(
(By.XPATH, "//li[span[normalize-space(.) = 'โฮมออฟฟิศ']]"))
)
else:
# รอให้ element ปรากฏขึ้นในระยะเวลาหนึ่ง
element = WebDriverWait(driver, 10).until(
EC.presence_of_element_located(
(By.XPATH, "//li[span[normalize-space(.) = 'อาคารพาณิชย์']]"))
)

# ใช้ JavaScript scroll ให้ element อยู่ใน viewport
driver.execute_script("arguments[0].scrollIntoView({behavior: 'smooth', block: 'center'});", element)

# หน่วงเวลา 1.5 วินาทีเพื่อให้การเลื่อนเสร็จสมบูรณ์
time.sleep(1.5)

except:
pass

try:
if ttypeasset == "คอนโด":
driver.find_element_by_xpath("//li[span[normalize-space(.) = 'คอนโด']]").click()
time.sleep(1)
if ttypeasset == "บ้าน":
driver.find_element_by_xpath("//li[span[normalize-space(.) = 'บ้าน/บ้านเดี่ยว']]").click()
time.sleep(1)
if ttypeasset == "ทาวน์เฮ้าส์":
driver.find_element_by_xpath("//li[span[normalize-space(.) = 'ทาวน์โฮม/ทาวน์เฮ้าส์']]").click()
time.sleep(1)
if ttypeasset == "อาคารพาณิชย์":
driver.find_element_by_xpath("//li[span[normalize-space(.) = 'อาคารพาณิชย์']]").click()
time.sleep(1)
if ttypeasset == "ที่ดิน":
driver.find_element_by_xpath("//li[span[normalize-space(.) = 'ที่ดิน']]").click()
time.sleep(1)
if ttypeasset == "อพาร์ทเมนท์":
driver.find_element_by_xpath("//li[span[normalize-space(.) = 'กิจการโรงแรม & กิจการอพาร์ตเมนต์']]").click()
time.sleep(1)
if ttypeasset == "โรงแรม":
driver.find_element_by_xpath("//li[span[normalize-space(.) = 'กิจการโรงแรม & กิจการอพาร์ตเมนต์']]").click()
time.sleep(1)
if ttypeasset == "สำนักงาน":
driver.find_element_by_xpath("//li[span[normalize-space(.) = 'สำนักงาน']]").click()
time.sleep(1)
if ttypeasset == "โรงงาน":
driver.find_element_by_xpath("//li[span[normalize-space(.) = 'โรงงาน']]").click()
time.sleep(1)
if ttypeasset == "โกดัง":
driver.find_element_by_xpath("//li[span[normalize-space(.) = 'โกดัง']]").click()
time.sleep(1)
except:
pass

try:
# รอให้ element ปรากฏขึ้นในระยะเวลาหนึ่ง
element = WebDriverWait(driver, 10).until(
EC.presence_of_element_located(
(By.XPATH, "//span[@class='line-clamp-1 pl-0.5 text-grey-outline' and contains(text(), 'เลือกทำเล')]"))
)

# ใช้ JavaScript scroll ให้ element อยู่ใน viewport
driver.execute_script("arguments[0].scrollIntoView({behavior: 'smooth', block: 'end'});", element)

# หน่วงเวลา 1.5 วินาทีเพื่อให้การเลื่อนเสร็จสมบูรณ์
time.sleep(1.5)

except:
pass

if ttypeasset == "คอนโด":
driver.execute_script("window.scrollBy(0,200);void(0);")
time.sleep(2)

try:
driver.find_element_by_xpath("//span[contains(text(), 'เลือกโครงการ')]/parent::div").click()
time.sleep(1)
except:
pass

try:
driver.find_element_by_xpath("//input[@placeholder='ค้นหาโครงการ']").send_keys(tproject_lvr)
# driver.find_element_by_xpath('//input[@class="select2-search__field"]').send_keys("ไม่มี")
time.sleep(5)
except:
pass

try:
# driver.find_element_by_xpath('//li[contains(text(),"' + tproject_lvr + '")]').click()
driver.find_element_by_xpath(
"//p[contains(text(), 'ไม่ระบุโครงการ')]/ancestor::li/preceding::li[1]/following::li[2]").click()
time.sleep(3)
except:
pass

try:
# driver.find_element_by_xpath('//li[contains(text(),"' + tproject_lvr + '")]').click()
driver.find_element_by_xpath("//p[contains(text(), 'ไม่ระบุโครงการ')]/ancestor::li").click()
time.sleep(3)
except:
pass

# //p[contains(text(), 'ไม่ระบุโครงการ')]/ancestor::li/preceding::li[1]/following::li[2] โครงการ

else:

try:
driver.find_element_by_xpath("//span[contains(text(), 'เลือกโครงการ')]/parent::div").click()
time.sleep(1)
except:
pass

try:
time.sleep(5)
driver.find_element_by_xpath("//input[@placeholder='ค้นหาโครงการ']").send_keys("ไม่ระบุ")
time.sleep(3)
except:
pass

try:
# driver.find_element_by_xpath('//li[contains(text(),"' + tproject_lvr + '")]').click()
driver.find_element_by_xpath("//p[contains(text(), 'ไม่ระบุโครงการ')]/ancestor::li").click()
time.sleep(3)
except:
pass
# //p[contains(text(), 'ไม่ระบุโครงการ')]/ancestor::li ไม่ระบุโครงการ

try:
time.sleep(5)
driver.find_element_by_xpath("//div[span[contains(text(),'เลือกทำเล')]]").click()
time.sleep(3)
except:
pass

try:
driver.find_element_by_xpath("//input[contains(@placeholder, 'ค้นหาทำเลที่ตั้ง')]").send_keys(tzone_real)
time.sleep(6)
except:
pass

try:
# driver.find_element_by_xpath('//li[contains(text(),"' + tproject_lvr + '")]').click()
driver.find_element_by_xpath("//input[contains(@placeholder, 'ค้นหาทำเลที่ตั้ง')]/following::li[1]").click()
time.sleep(2)
except:
pass

driver.execute_script("window.scrollBy(0,200);void(0);")
time.sleep(2)

try:
driver.find_element_by_xpath("//button[@type='button' and @role='switch' and @data-state='checked']").click()
time.sleep(2)
except:
pass

#เลื่อนหาถัดไป

try:
# รอให้ element ปรากฏขึ้นในระยะเวลาหนึ่ง
element = WebDriverWait(driver, 10).until(
EC.presence_of_element_located(
(By.XPATH, "//button[text()='ถัดไป' and contains(@class, 'inline-flex')]"))
)

# ใช้ JavaScript scroll ให้ element อยู่ใน viewport
driver.execute_script("arguments[0].scrollIntoView({behavior: 'smooth', block: 'center'});", element)

# หน่วงเวลา 1.5 วินาทีเพื่อให้การเลื่อนเสร็จสมบูรณ์
time.sleep(1.5)

except:
pass

# เลื่อนหาถัดไป

try:
driver.find_element_by_xpath("//button[text()='ถัดไป' and contains(@class, 'inline-flex')]").click()
time.sleep(4)
except:
pass
try:
driver.find_element_by_xpath("//button[text()='ถัดไป' and contains(@class, 'inline-flex')]").click()
time.sleep(4)
except:
pass

# รายการตำแหน่งไฟล์รูป
image_paths = [
i_path + "\\" + tproductid + f"pic{i}.jpg" for i in range(1, 9)
]

# กรองเฉพาะไฟล์ที่มีขนาดมากกว่า 1KB
valid_images = []
for path in image_paths:
try:
with open(path, 'rb') as f:
if len(f.read()) > 1024:
valid_images.append(path)
except FileNotFoundError:
pass

if valid_images:
try:
driver.find_element_by_xpath(
"(//span[text()='เพิ่มรูป']/parent::div//input[@type='file'])[1]"
).send_keys("\n".join(valid_images))
time.sleep(50)
except Exception as e:
print(f"Error uploading images: {e}")
pass


try:
# รอให้ element ปรากฏขึ้นในระยะเวลาหนึ่ง
element = WebDriverWait(driver, 10).until(
EC.presence_of_element_located(
(By.XPATH, "//button[text()='ถัดไป' and contains(@class, 'inline-flex')]"))
)

# ใช้ JavaScript scroll ให้ element อยู่ใน viewport
driver.execute_script("arguments[0].scrollIntoView({behavior: 'smooth', block: 'center'});", element)

# หน่วงเวลา 1.5 วินาทีเพื่อให้การเลื่อนเสร็จสมบูรณ์
time.sleep(1.5)

except:
pass



try:
driver.find_element_by_xpath("//button[text()='ถัดไป' and contains(@class, 'inline-flex')]").click()
time.sleep(2)
except:
pass
try:
driver.find_element_by_xpath("//button[text()='ถัดไป' and contains(@class, 'inline-flex')]").click()
time.sleep(2)
except:
pass
try:
driver.find_element_by_xpath("//button[text()='ถัดไป' and contains(@class, 'inline-flex')]").click()
time.sleep(4)
except:
pass

try:
# หัวข้อ
driver.find_element_by_xpath("//input[@type='text' and @maxlength='255']").send_keys(tl_title)
time.sleep(1)
except:
pass

try:
# เนื้อหา
driver.find_element_by_xpath("(//textarea[contains(@placeholder, 'เช่น')])[1]").send_keys(tbody_txt)
time.sleep(3)
except:
pass

if te_title != "-" or te_body != "-":

try:
# รอให้ element ปรากฏขึ้นในระยะเวลาหนึ่ง
element = WebDriverWait(driver, 10).until(
EC.presence_of_element_located(
(By.XPATH, '//img[@src="/icons/en-flag.svg"]'))
)

# ใช้ JavaScript scroll ให้ element อยู่ใน viewport
driver.execute_script("arguments[0].scrollIntoView({behavior: 'smooth', block: 'center'});", element)

# หน่วงเวลา 1.5 วินาทีเพื่อให้การเลื่อนเสร็จสมบูรณ์
time.sleep(1.5)

except:
pass

try:
driver.find_element_by_xpath('//img[@src="/icons/en-flag.svg"]').click()
time.sleep(3)
except:
pass

try:
# หัวข้อ eng
driver.find_element_by_xpath("//input[@type='text' and @maxlength='255']").send_keys(te_title)
time.sleep(1)
except:
pass

try:
# เนื้อหา eng
driver.find_element_by_xpath("(//textarea[contains(@placeholder, 'เช่น')])[1]").send_keys(te_body)
time.sleep(3)
except:
pass

try:
# รหัสทรัพย์
driver.find_element_by_xpath("(//input[contains(@placeholder, 'XXXXX')])[1]").send_keys(tcode_asset)
time.sleep(1)
except:
pass

# วันที่พร้อมให้เช่า

driver.execute_script("window.scrollBy(0,300);void(0);")
time.sleep(2)

if twant == "ให้เช่า":
try:
button = driver.find_element(By.XPATH, "//button[div[text()='DD/MM/YYYY']]")
driver.execute_script("arguments[0].click();", button)
time.sleep(2)
except:
pass

try:
span_button = driver.find_element(By.XPATH,
"//span[@role='button' and contains(@aria-label, 'First available date')]")
driver.execute_script("arguments[0].click();", span_button)
time.sleep(1)
except:
pass

# วันที่พร้อมให้เช่า

# ตร.ม.
if ttypeasset == "คอนโด":
try:
driver.find_element_by_xpath(
"//span[@class='!text-border flex-none' and text()='ตร.ม.']/preceding::input[1]").send_keys(tarea_sqm)
time.sleep(1)
except:
pass

# ไร่

#print("rai" + tarea_rai)
#print("ngan" + tarea_ngan)
#print("sqwa" + tarea_sqwa)

try:
driver.find_element_by_xpath(
"//span[@class='!text-border flex-none' and text()='ไร่']/preceding::input[1]").send_keys(tarea_rai)
time.sleep(1)
except:
pass

# งาน

try:
driver.find_element_by_xpath(
"//span[@class='!text-border flex-none' and text()='งาน']/preceding::input[1]").send_keys(tarea_ngan)
time.sleep(1)
except:
pass

# ตารางวา

try:
driver.find_element_by_xpath(
"//span[@class='!text-border flex-none' and text()='ตร.ว.']/preceding::input[1]").send_keys(tarea_sqwa)
time.sleep(1)
except:
pass

# พื้นที่ใช้สอย
if ttypeasset != "คอนโด":
try:
driver.find_element_by_xpath(
"//span[@class='!text-border flex-none' and text()='ตร.ม.']/preceding::input[1]").send_keys(
tusefulspace)
time.sleep(1)
except:
pass

# จำนวนชั้นทั้งหมด

if ttypeasset != "ที่ดิน":
if ttypeasset != "คอนโด" and ttypeasset != "สำนักงาน":

try:
# เลื่อนหา

# รอให้ปุ่มแรกใน num-floors ปรากฏ
element = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.XPATH, "//div[contains(@class, 'num-floors')]//button[1]"))
)

# ใช้ JavaScript scroll ให้ element อยู่ใน viewport
driver.execute_script("arguments[0].scrollIntoView({behavior: 'smooth', block: 'center'});", element)

# หน่วงเวลา 1.5 วินาทีเพื่อให้การเลื่อนเสร็จสมบูรณ์
time.sleep(1.5)

except:
pass

# driver.execute_script("window.scrollBy(0, 300);")
time.sleep(2)

try:
time.sleep(4)
driver.find_element_by_xpath("//div[contains(@class, 'num-floors')]//button[1]").click()
time.sleep(4)
except:
pass

try:

time.sleep(3)

# กดคลิกเลือกจำนวนชั้น
driver.execute_script("""
var tmaxfloor = String(arguments[0]).trim(); // แปลงเป็น string และตัดช่องว่าง

// ถ้า tmaxfloor เป็น 0 ให้เปลี่ยนเป็น 1
if (tmaxfloor == '0') {
tmaxfloor = '1';
}

try {
var spanElements = [...document.querySelectorAll('div[role="option"] span')];
var spanElement;

if (tmaxfloor === 'มากกว่า 100') {
spanElement = spanElements.find(span => span.textContent.includes('มากกว่า 100'));
} else {
spanElement = spanElements.find(span => span.textContent.trim() === tmaxfloor);
}

console.log("spanElement:", spanElement); // Debugging

if (spanElement) {
var divElement = spanElement.closest('div[role="option"]');

console.log("divElement:", divElement); // Debugging

if (divElement) {
divElement.click();
} else {
throw new Error('ไม่พบ div ที่เป็น parent ของ span');
}
} else {
throw new Error('ไม่พบ span ที่มีข้อความตรงกับ tmaxfloor');
}
} catch (error) {
console.error('เกิดข้อผิดพลาดใน JavaScript: ', error.message);
return false;
}
""", tmaxfloor)

time.sleep(4)
except:

pass
else:

try:
# เลื่อนหา

# รอให้ปุ่มแรกใน num-floors ปรากฏ
element = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.XPATH, "//div[contains(@class, 'floors')]//button[1]"))
)

# ใช้ JavaScript scroll ให้ element อยู่ใน viewport
driver.execute_script("arguments[0].scrollIntoView({behavior: 'smooth', block: 'center'});", element)

# หน่วงเวลา 1.5 วินาทีเพื่อให้การเลื่อนเสร็จสมบูรณ์
time.sleep(1.5)

except:
pass

# driver.execute_script("window.scrollBy(0, 300);")
time.sleep(2)

try:
time.sleep(4)
driver.find_element_by_xpath("//div[contains(@class, 'floors')]//button[1]").click()
time.sleep(4)
except:
pass

try:
# กดคลิกเลือกจำนวนชั้นคอนโด

time.sleep(3)

driver.execute_script("""
var tfloor = String(arguments[0]).trim(); // แปลงเป็น string และตัดช่องว่าง

// ถ้า tfloor เป็น 0 ให้เปลี่ยนเป็น 1
if (tfloor == '0') {
tfloor = '1';
}

try {
var spanElements = [...document.querySelectorAll('div[role="option"] span')];
var spanElement = spanElements.find(span => span.textContent.trim() === tfloor);

console.log("spanElement:", spanElement); // Debugging

if (spanElement) {
var divElement = spanElement.closest('div[role="option"]');

console.log("divElement:", divElement); // Debugging

if (divElement) {
divElement.scrollIntoView({behavior: 'smooth', block: 'center'}); // เลื่อนเข้า viewport
setTimeout(() => divElement.click(), 500); // รอ 0.5 วินาทีก่อนคลิก
} else {
throw new Error('ไม่พบ div ที่เป็น parent ของ span');
}
} else {
throw new Error('ไม่พบ span ที่มีข้อความตรงกับ tfloor');
}
} catch (error) {
console.error('เกิดข้อผิดพลาดใน JavaScript: ', error.message);
return false;
}
""", tfloor)

time.sleep(3)

except:
pass

if ttypeasset == "อาคารพาณิชย์" or ttypeasset == "อพาร์ทเมนท์" or ttypeasset == "โรงแรม":
try:
driver.find_element_by_xpath(
"//div[label//span[contains(text(), 'จำนวนห้อง')]]/following-sibling::div//input").send_keys(tbedroom)
time.sleep(3)
except:
pass

if ttypeasset != "ที่ดิน":
# เลือกห้องนอน
try:
driver.find_element_by_xpath('//div[@class="bedrooms"]/button').click()
time.sleep(3)
except:
pass

try:
# เลือกห้องนอน
driver.execute_script("""
try {
var tbedroom = arguments[0]; // รับค่าจาก Python

// แปลงค่าห้องนอนให้ตรงกับ HTML
if (tbedroom == '0' || tbedroom == '1') {
tbedroom = '1 ห้อง';
} else if (tbedroom == '2') {
tbedroom = '2 ห้อง';
} else if (tbedroom == '3') {
tbedroom = '3 ห้อง';
} else if (tbedroom == '4') {
tbedroom = '4 ห้อง';
} else if (tbedroom == '5') {
tbedroom = '5 ห้อง';
} else if (tbedroom == '6') {
tbedroom = '6 ห้อง';
} else if (tbedroom == '7') {
tbedroom = '7 ห้อง';
} else if (tbedroom == '8') {
tbedroom = '8 ห้อง';
} else if (tbedroom == '9') {
tbedroom = '9 ห้อง';
} else if (tbedroom == '10') {
tbedroom = '10 ห้อง';
} else {
tbedroom = 'มากกว่า 10 ห้อง';
}

console.log("กำลังเลือก: " + tbedroom); // Debug log

// ค้นหา span ที่มีข้อความตรงกับ tbedroom
var spanElement = [...document.querySelectorAll('span')]
.find(span => span.textContent.trim() === tbedroom);

if (spanElement) {
// ย้อนกลับไปหา div ที่เป็น parent ของ span
var divElement = spanElement.closest('div[role="option"]');
if (divElement) {
divElement.click();
console.log("คลิกสำเร็จ: " + tbedroom);
} else {
console.error("ไม่พบ div parent ของ: " + tbedroom);
}
} else {
console.error("ไม่พบตัวเลือก: " + tbedroom);
}
} catch (err) {
console.error("เกิดข้อผิดพลาด: ", err);
}
""", tbedroom)
except:
pass

# เลือกห้องน้ำ
try:
driver.find_element_by_xpath('//div[@class="bath_rooms"]/button').click()
time.sleep(3)
except:
pass

try:
# เลือกห้องนอน
driver.execute_script("""
var tbahtroom = arguments[0]; // ตัวแปรจาก Python ผ่าน arguments

// แปลงค่าห้องนอน
if (tbahtroom == '0') {
tbahtroom = '1 ห้องน้ำ';
} else if (tbahtroom == '1') {
tbahtroom = '1 ห้องน้ำ';
} else if (tbahtroom == '2') {
tbahtroom = '2 ห้องน้ำ';
} else if (tbahtroom == '3') {
tbahtroom = '3 ห้องน้ำ';
} else if (tbahtroom == '4') {
tbahtroom = '4 ห้องน้ำ';
} else if (tbahtroom == '5') {
tbahtroom = '5 ห้องน้ำ';
} else {
tbahtroom = 'มากกว่า 5';
}

// ค้นหา span ที่มีข้อความตรงกับ tbahtroom
var spanElement = [...document.querySelectorAll('span')].find(span => span.textContent.trim() === tbahtroom);

if (spanElement) {
// ย้อนกลับไปหา div ที่เป็น parent ของ span
var divElement = spanElement.closest('div[role="option"]');

// คลิกที่ div
divElement.click();
}
""", tbahtroom)
except:
pass

# เลือก เช่ารายเดือน
if twant == "ให้เช่า":
try:
driver.execute_script("""
setTimeout(() => {
try {
var imgElement = document.querySelector('img[alt="icon เช่ารายเดือน"]');

if (imgElement) {
imgElement.click();
console.log("คลิกสำเร็จที่ไอคอนเช่ารายเดือน");
} else {
console.error("ไม่พบไอคอนเช่ารายเดือน");
}
} catch (err) {
console.error("เกิดข้อผิดพลาด: ", err);
}
}, 2000); // 2000 มิลลิวินาที (2 วินาที)
""")

time.sleep(2) # รอให้ JavaScript ทำงานก่อน Python ไปขั้นตอนถัดไป

except:
pass

try:
# เลือกเตียงนอน
driver.execute_script("""
setTimeout(() => {
try {
var imgElement = document.querySelector('img[alt="icon เตียงนอน"]');

if (imgElement) {
imgElement.scrollIntoView(); // เลื่อนให้เห็น
setTimeout(() => imgElement.click(), 1000); // รอ 1 วินาทีก่อนคลิก
console.log("คลิกสำเร็จที่ไอคอนเตียงนอน");
} else {
console.error("ไม่พบไอคอนเตียงนอน");
}
} catch (err) {
console.error("เกิดข้อผิดพลาด: ", err);
}
}, 2000); // 2000 มิลลิวินาที (2 วินาที)
""")

time.sleep(3) # รอให้ JavaScript ทำงานก่อน Python ไปขั้นตอนถัดไป
except:
pass

try:
# เลือก ไม่พบไอคอนระบบรักษาความปลอดภัย
driver.execute_script("""
setTimeout(() => {
try {
var imgElement = document.querySelector('img[alt="icon ระบบรักษาความปลอดภัย"]');

if (imgElement) {
imgElement.scrollIntoView(); // เลื่อนให้เห็น
setTimeout(() => imgElement.click(), 1000); // รอ 1 วินาทีก่อนคลิก
console.log("คลิกสำเร็จที่ไอคอนระบบรักษาความปลอดภัย");
} else {
console.error("ไม่พบไอคอนระบบรักษาความปลอดภัย");
}
} catch (err) {
console.error("เกิดข้อผิดพลาด: ", err);
}
}, 2000); // 2000 มิลลิวินาที (2 วินาที)
""")

time.sleep(3) # รอให้ JavaScript ทำงานก่อน Python ไปขั้นตอนถัดไป
except:
pass

try:
# รอให้ element ปรากฏขึ้นในระยะเวลาหนึ่ง
element = WebDriverWait(driver, 10).until(
EC.presence_of_element_located(
(By.XPATH, "//button[text()='ถัดไป' and contains(@class, 'inline-flex')]"))
)

# ใช้ JavaScript scroll ให้ element อยู่ใน viewport
driver.execute_script("arguments[0].scrollIntoView({behavior: 'smooth', block: 'center'});", element)

# หน่วงเวลา 1.5 วินาทีเพื่อให้การเลื่อนเสร็จสมบูรณ์
time.sleep(1.5)

except:
pass

# ถัดไป
try:
driver.find_element_by_xpath("//button[text()='ถัดไป' and contains(@class, 'inline-flex')]").click()
time.sleep(4)
except:
pass
try:
driver.find_element_by_xpath("//button[text()='ถัดไป' and contains(@class, 'inline-flex')]").click()
time.sleep(4)
except:
pass

# ราคา

# ราคา promotion

new_tprice = round(int(tprice) * 1.2)

new_tprice_str = str(new_tprice) # แปลง new_tprice เป็น string

try:
time.sleep(1)
driver.find_element_by_xpath(
"//div[./label//span[text()='ตั้งราคาโปรโมชัน']]//button[@type='button' and @role='switch' and @data-state='unchecked']").click()
time.sleep(3)
except:
pass

try:
# ราคา new_tprice
driver.find_element_by_xpath('(//input[@inputmode="numeric" and @placeholder="ราคา"])[1]').send_keys(
new_tprice_str)
time.sleep(2)
except:
pass

try:
# ราคา tprice
driver.find_element_by_xpath('(//input[@inputmode="numeric" and @placeholder="ราคา"])[2]').send_keys(tprice)
time.sleep(2)
except:
pass

# ราคา promotion

try:

# Wait for the button with text "บันทึกร่าง" to appear
button = WebDriverWait(driver, 10).until(
EC.presence_of_element_located(
(By.XPATH, "//button[contains(text(), 'บันทึกร่าง')]"))
)

# Scroll the page so the button is in view
driver.execute_script("arguments[0].scrollIntoView({behavior: 'smooth', block: 'center'});", button)

# Wait for the scrolling to complete (optional)
time.sleep(1.5)

except:
pass

# coagent #""" คือ เปิดรับ COAGENT , """ คือ ไม่เปิดรับ COAGENT

"""

try:
driver.find_element_by_xpath(
'//div[label//span[text()="เปิดรับ Co-Agent"]]/button[@type="button" and @role="switch" and @data-state="unchecked"]').click()
time.sleep(3)
except Exception as e:
print(f"เกิดข้อผิดพลาด: {e}")
pass

"""

# coagent #""" คือ เปิดรับ COAGENT , """ คือ ไม่เปิดรับ COAGENT

# ------------- บันทึกแบบร่าง -------------#

# """ คือเปิดแบบร่าง , """ ปิดแบบร่าง

#"""

try:
driver.find_element_by_xpath("//button[contains(text(), 'บันทึกร่าง')]").click()
time.sleep(6)
except:
pass

try:
driver.find_element_by_xpath("//button[contains(@class, 'inline-flex') and contains(text(), 'ตกลง')]").click()
time.sleep(6)
except:
pass
#"""

# ------------- เผยแพร่ -------------#

# """ คือเปิดเผยแพร่ , """ ไม่เผยแพร่

"""

try:
driver.find_element_by_xpath("//button[contains(@class, 'inline-flex') and contains(text(), 'เผยแพร่ !')]").click()
time.sleep(6)
except:
pass

try:
driver.find_element_by_xpath("//button[text()='ยืนยัน']").click()
time.sleep(6)
except:
pass

"""

# ------------- จบ -------------#

try:
driver.switch_to.default_content()
time.sleep(1)
except:
pass

# โพสเสร็จสิ้น

项目地点

导航

周边设备

创建需求

预算
ค่าเสื่อมราคาบ้านและคอนโดคืออะไร? วิธีประเมินมูลค่าก่อนซื้อ ขาย หรือลงทุน

ค่าเสื่อมราคาบ้านและคอนโดคืออะไร? วิธีประเมินมูลค่าก่อนซื้อ ขาย หรือลงทุน

ค่าเสื่อมราคาบ้านและคอนโดคิดอย่างไร? ทำความเข้าใจปัจจัยที่ทำให้มูลค่าลดลง วิธีประเมินราคาทรัพย์ และสิ่งที่ควรเช็กก่อนซื้อ ขาย หรือลงทุน

2026年9月8日

BTS สายสุขุมวิท รถไฟฟ้าสายหลักเชื่อม 3 จังหวัด เจาะทำเลคอนโดน่าอยู่ตลอดสาย

BTS สายสุขุมวิท รถไฟฟ้าสายหลักเชื่อม 3 จังหวัด เจาะทำเลคอนโดน่าอยู่ตลอดสาย

รู้จัก BTS สายสีลม สนามกีฬาแห่งชาติ–บางหว้า รวม 14 สถานี เจาะเส้นทางสีลม–สาทร จุดเชื่อมต่อสำคัญ และบทบาทในการเชื่อมฝั่งธนบุรี

2026年9月8日