แนะนำ สอบถาม ภาษา C สำหรับผู้เริ่มต้น ภาษา Java ภาษา Python
Moderator: mindphp , ผู้ดูแลกระดาน
Panchalee
PHP Super Member
โพสต์: 296 ลงทะเบียนเมื่อ: 30/10/2017 10:10 am
โพสต์ที่ยังไม่ได้อ่าน
โดย Panchalee » 30/11/2017 3:20 pm
ต้องการให้ selenium เลือกหัวข้อตามที่ต้องการ ในที่นี้ต้องการให้เลือกบทความ
เมื่อเลือกบทความเสร็จ ต้องการกดเข้าไปที่หมวดที่ต้องการ เช่น "ความรู้ทั่วไป" แล้วให้ย้อนกลับออกมาไปกดที่หมวด "จัดการบริหาร โปรเจ็คด้วย DotProject " ให้ทำไปจนครบทุกหมวด
ตัวอย่างรูป
ลองใช้โค้ดตาม
การเขียนวน loop ของ selenium
โค้ด: เลือกทั้งหมด
from selenium import webdriver
driver = webdriver.Chrome('/usr/local/lib/python2.7/site-packages/chromedriver')
driver.get("https://www.mindphp.com/forums/index.php")
weblink = driver.find_elements_by_css_selector('a.forumtitle')
for w in range(len(weblink)):
link = driver.find_elements_by_css_selector('a.forumtitle')
allweb = link[w].get_attribute("href")
driver.get(allweb.encode('utf-8'))
driver.back()
แต่ลองนำมาปรับเปลี่ยนโค้ดตัวเองแล้ว ยังไม่สามารถคลิกที่หัวข้อบทความได้ ขอคำแนะนำด้วยค่ะ
ตัวอย่างโค้ดที่ทำ
โค้ด: เลือกทั้งหมด
from selenium import webdriver
browser = webdriver.Firefox()
#เปิดลิ้งค์เข้า mindphp
browser.get('https://www.mindphp.com/')
time.sleep(01)
weblink = browser.find_elements_by_css_selector('li.item-110 deeper parent dropdown dropdown-large open')
for w in range(len(weblink)):
link = browser.find_elements_by_css_selector('li.item-110 deeper parent dropdown dropdown-large open')
allweb = link[w].get_attribute("href")
browser.get(allweb.encode('utf-8'))
browser.back()
ตัวอย่างรูปที่แสดงโค้ด
thatsawan
PHP VIP Members
โพสต์: 28508 ลงทะเบียนเมื่อ: 31/03/2014 10:02 am
ติดต่อ:
โพสต์ที่ยังไม่ได้อ่าน
โดย thatsawan » 30/11/2017 3:25 pm
browser.find_elements_by_css_selector >> หมายถึงต้องเรียกเเบบ CSS ป่าว เช่น (.classname)
print weblink ได้อะไรออกมา
Panchalee
PHP Super Member
โพสต์: 296 ลงทะเบียนเมื่อ: 30/10/2017 10:10 am
โพสต์ที่ยังไม่ได้อ่าน
โดย Panchalee » 01/12/2017 3:20 pm
thatsawan เขียน: browser.find_elements_by_css_selector >> หมายถึงต้องเรียกเเบบ CSS ป่าว เช่น (.classname)
print weblink ได้อะไรออกมา
print weblink แล้วไม่ได้อะไรออกมาเลยค่ะ
thatsawan
PHP VIP Members
โพสต์: 28508 ลงทะเบียนเมื่อ: 31/03/2014 10:02 am
ติดต่อ:
โพสต์ที่ยังไม่ได้อ่าน
โดย thatsawan » 01/12/2017 3:24 pm
ถ้างั้นต้องไปแก้ไขส่วนนั้นก่อน ต้องได้ค่ามาก่อน ถึงจะไป loop
rangsan
PHP Hero Member
โพสต์: 199 ลงทะเบียนเมื่อ: 30/04/2018 9:44 am
โพสต์ที่ยังไม่ได้อ่าน
โดย rangsan » 09/05/2018 11:44 am
ถ้าเกิดว่าต้องการให้ selenium คลิกเข้าไปที่หมวดความรู้
โค้ดโดยรวม
โค้ด: เลือกทั้งหมด
link_topic = driver.find_elements_by_css_selector('li.span3')
print(link_topic)
for x in range(len(link_topic)):
link_topic = driver.find_elements_by_css_selector('li.span3')
all = link_topic[x].get_attribute("href")
driver.get(all.encode('utf-8'))
driver.back()
ภาพของ หน้าเว็บ
ภาพที่ 1
ภาพที่ 2
ต้องใช้ Class ตัวไหนที่จะใส่ไปใน
โค้ด: เลือกทั้งหมด
link_topic = driver.find_elements_by_css_selector('')
It’s never too late to start again.
nuattawoot
PHP VIP Members
โพสต์: 2561 ลงทะเบียนเมื่อ: 05/06/2017 9:34 am
โพสต์ที่ยังไม่ได้อ่าน
โดย nuattawoot » 09/05/2018 2:24 pm
ตัวอย่าง กด Path และ นับจำนวนโพสต์
โค้ด: เลือกทั้งหมด
search1 = driver.find_element_by_link_text('บทความ').click()
search2 = driver.find_element_by_link_text('ความรู้ทั่วไป').click()
countRow3 = len(driver.find_elements_by_xpath(
"//div[@class='category-list']//table[@class='category table table-striped table-bordered table-hover']/tbody/tr"))
print (countRow3)
First Bug Love you
0 ตอบกลับ
5617 แสดง
โพสต์ล่าสุด โดย GoB
13/02/2015 1:43 pm
0 ตอบกลับ
1870 แสดง
โพสต์ล่าสุด โดย chbbk
25/09/2014 3:03 pm
0 ตอบกลับ
568 แสดง
โพสต์ล่าสุด โดย wkid
31/10/2022 1:42 pm
สมาชิกกำลังดูบอร์ดนี้: Google Adsense [Bot] และบุคลทั่วไป 111